问题 填空题

以下程序的运行结果是
# include<string.h>
typedef struct student
char name[10];
long sno);
float score
STU;
main()
STU a="zhangsan",2001,95,b="Shangxian",2002,90
c="Anhua",2003,95,d,*p=&d;
d=a;
if(strcmp(a.name,b.name)>0)d=b;
if(strcmp(c.name,d.name)>0)d=c;
printf("%1d%s\\n",d.sno,p->name);

答案

参考答案:2002 shangxian

解析: ’B’的ASCII值是66。本题中指针变量p指向d,执行第一个if语句时,条件成立,d=b;执行第二个if语句时,条件不成立,故d=b,所以d.sno=2002,p->name"Shangxian"。

单项选择题
多项选择题