#include <stdio.h>
struct STU
{char name[10];
float score;};
main ()
{struct STU s[3]={{"Zhang",90},{"Li",95},
{"Wang",93}},*p=s;
int i;
float sum=0;
for(i=0;i<3;i++)sum=sum+p->score;
printf ("%6.2f\n", sum);
}
为什么等于270.00而不是278.00?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
wux_labs 2022-12-13 16:54关注*p=s,p指向s数组开头,for循环并没有使p移动,也就是p一直指向s开头,循环3次sum=sum+p->score,实际上是s[0]相加了3次,就是270。
本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报 编辑记录解决 1无用