以下程序的运行结果是【 】。 #include <stdio.h> #include <string.h> typcdef struct student { char name[10]; long sno;

admin2009-01-15  36

问题 以下程序的运行结果是【  】。
   #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。
转载请注明原文地址:https://kaotiyun.com/show/0IXp777K
0

最新回复(0)