#include
struct Sudent
{
char num[6]; //改类型
char name[8];
char score[4];
}stu[5];
// print 定义可以放前面
void print( struct Sudent stu[],int count) //加上函数类型,参数类型声明
// struct student stu[6];//这句不要
{
int i,j; //增加
for(i = 0;i< count;i++) //增加
{
printf("%s%s",stu[i].num,stu[i].name/*,stu[i].score*/);//
for(j=0;j<3;j++)
printf("%d",stu[i].score[j]);
printf("\n");
}
}
//
void main()
{
int i,j;
//char stu[5]; //已经声明stu为全局结构体数组了,这句不要
// char print(char stu); //
for(i=0;i<5;i++)
{
scanf("%s",stu[i].num);
scanf("%s",stu[i].name);
for(j=0;j<3;j++)
scanf("%d",&stu[i].score[j]);
}
print(stu,5);
}
for(i=0;i<5;i++)
{
scanf("%s",stu[i].num);
scanf("%s",stu[i].name);
for(j=0;j<3;j++)
scanf("%d",&stu[i].score[j]);
}
num这个是int数组,不能用%s。只能循环一个一个输入
score这个是字符型,用%c
结构声明使用有点乱,和题目也不符合。
print函数定义也有问题。这个编译时就会报错的。
建议先想清楚结构内容,print函数,主函数内输入问题。