C语言中出现error C2088: '[' : illegal for struct是什么问题?0
fan12316432014.04.09浏览126次分享举报
#include
struct Score
{
int chinese;
int math;
float avg;
}s[4];
float avg1(int a,int b)
{
a=s[0].chinese;
b=s[0].math;
printf("%4d%4d6.2f
",a,b,(a+b)/2.0);
}
float avg2(struct Score s)
{
float aver[1];
aver[1]=(s[1].chinese+s[1].math)/2.0;
printf("%4d%4d%6.2f
",s[1].chinese,s[1].math,aver[1]);
}
void avg3(struct Score *p)
{
float aver[2];
p=&s[2];
aver[2]=(p->chinese+p->math)/2.0;
printf("%4d%4d%6.2f
",p->chinese,p->math,aver[2]);
}
struct Score avg4(struct Score s)
{
float aver[3];
aver[3]=(s[3].chinese+s[3].math)/2.0;
return aver[3];
}
void main()
{
int i;
printf("请输入4位学生的语文成绩、数学成绩
");
for( i=0;i<4;i++)
{
scanf("%d%d",&s[i].chinese,&s[i].math);
}
printf("语文数学平均成绩
");
avg1(s[0].chinese,s[0].math);
avg2;
avg3;
printf("%4d%4d%6.2f
",s[3].chinese,s[3].math,avg4);
}
error C2088: '[' : illegal for struct
Cpp1.c(24) : warning C4244: '=' : conversion from 'double ' to 'float ', possible loss of data
Cpp1.c(31) : error C2115: 'return' : incompatible types