问题 填空题

以下程序的运行结果是
#include <stdio.h>
#include <string.h>
typcdef 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

解析: strcmp函数用于比较两个字符串的大小,因为a.name=Zhangsan,b.name= Shangxian,所以strcmp(a.name,b.name)>0为真,执行d=b;因为c.name=Anhua,d.name= Shangxian,所以strcmp(c.name,d.name)>0不成立,不执行d=c;最后输出d.sno和d.name的值分别为2002,Shangxian。

选择题
名词解释