为什么程序输出不了?
问题描述:
#include<stdio.h>
int n,i;
struct Stu{
char xh[100];
char xm[100];
int cj1[100];
int cj2[100];
int cj3[100];
};
struct Stu stu;
void input(){
scanf("%d",&n);
for (i=0;i<n;i++){
scanf("%s%s%d%d%d",&stu.xh[i],&stu.xm[i],&stu.cj1[i],&stu.cj2[i],&stu.cj3[i]);
}
}
void print(){
for (i=0;i<n;i++){
printf("%s,%s,%d,%d,%d\n",stu.xh[i],stu.xm[i],stu.cj1[i],stu.cj2[i],stu.cj3[i]);
}
}
int main()
{
input();
printf("%s",stu.xh[0]);
print();
return 0;
}
```
答
修改如下,供参考:
#include<stdio.h>
int n,i;
struct Stu{
char xh[100];
char xm[100];
int cj1;
int cj2;
int cj3;
};
struct Stu stu[200];
void input(){
scanf("%d",&n);
for (i=0;i<n;i++){
scanf("%s%s%d%d%d",stu[i].xh,stu[i].xm,&stu[i].cj1,&stu[i].cj2,&stu[i].cj3);
}
}
void print(){
for (i=0;i<n;i++){
printf("%s,%s,%d,%d,%d\n",stu[i].xh,stu[i].xm,stu[i].cj1,stu[i].cj2,stu[i].cj3);
}
}
int main()
{
input();
//printf("%s",stu[0].xh);
print();
return 0;
}