@C语言大神,此处为何数组下标无效?求解释??跪谢!

//题目:10个学生,每个学生包括学号、姓名、3门成绩。//现输入10个学生的数据,求3门课总平均成绩,和最高分学生的学号、姓名、3门成绩、平均分。#include<st... //题目:10个学生,每个学生包括学号、姓名、3门成绩。
//现输入10个学生的数据,求3门课总平均成绩,和最高分学生的学号、姓名、3门成绩、平均分。
# include<stdio.h>
# include<conio.h>
# define N 10
struct student
{
char name[6];
char num[8];
float score[3];
float average;
}stu[N];
int main()
{
int i,j;
float max=0,maxi=0,average=0,sum=0;
for(i=0;i<N;i++)
{printf("iput the %dth number",i+1);
printf("NO:");
scanf("%s",stu[i].num);
printf("Name:");
scanf("%s",stu[i].name);
for(j=0;j<3;j++)
{
printf("the %dth score:",j+1);
scanf("%f",&stu[i].score);
}}
for(i=0;i<N;i++)
{sum=0;
for(j=0;j<3;j++)
sum+=stu[i].score[j];
stu[i].average=sum/3.0;
if(sum>max)
{max=sum;maxi=i;}
average+=stu[i].average;
}
average/=N;
printf("NO. name score1 score2 score3 average\n");
for(i=0;i<N;i++)
{
printf("%5s%10s",stu[i].num,stu[i].name);
for(j=0;j<3;j++)
printf("%9.2f",stu[i].score[j]);
printf("%8.2f",stu[i].average);
}
printf("average=%5.2f\n",average);
printf("highest is %s,%s",stu[maxi].num,stu[maxi].name);
printf("grade is %6.2f,%6.2f,%6.2f,average is %5.2f.\n",
stu[maxi].score[0],stu[maxi].score[1],stu[maxi].score[2],stu[maxi].average);
getch();
}
展开
 我来答
wang06998
2015-06-13 · TA获得超过5659个赞
知道大有可为答主
回答量:3755
采纳率:83%
帮助的人:2549万
展开全部
printf("highest is %s,%s",stu[maxi].num,stu[maxi].name);
printf("grade is %6.2f,%6.2f,%6.2f,average is %5.2f.\n",
stu[maxi].score[0],stu[maxi].score[1],stu[maxi].score[2],stu[maxi].average);
这两句,数组下标是float。要求数组下标只能是整数或者char
我让你取一个数组中第4.8个元素,你取的出来?
白雲深處是我家
2015-06-13 · TA获得超过381个赞
知道小有建树答主
回答量:203
采纳率:66%
帮助的人:243万
展开全部
scanf("%f",&stu[i].score); //score定义是数组,你这样用肯定不正确了
printf("highest is %s,%s",stu[maxi].num,stu[maxi].name); //maxi定义是float,下标应该使用int类型

程序还是有点问题的,仔细检查一下吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梁昌仔
2015-06-13 · TA获得超过272个赞
知道小有建树答主
回答量:287
采纳率:0%
帮助的人:208万
展开全部
scanf("%f",&stu[i].score);错误。因为stu[i].score本来是地址,你又写了&取地址符号,相当于地址的地址,所以无效
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式