有以下程序: struct STU { char num[10]; float score[3];); main() { struct stu s[3]={{"20021",90,95,85}, {"20022",95,80,75}, {"20023",100,95,90}},*p=s; int i; float sum=0; for(i=0;i<3,i++) sum=sum+p->score[i]; printf("%6.2f\n",sum); } 程序运行后的输出结果是( )。
A.260.00
B.270.00
C.280.00
D.285.00
参考答案:B
解析: 程序中首先定义了一个结构体,其成员为一字符数组和一实型数组。在main()中首先定义了一个结构体数组并初始化。接下来在for循环中遍历了结构体数组的第一个元素中数组成员即{"20021",90,95,85"}循环结果为90+95+85=270最后sum为270,又输出格式为%6.2f\n要求保留两位小数,故最后输出为270.00。所以4个选项中B正确。