void input()
{
int i, j, m;
printf("请输入需要统计的学员数:");
scanf_s("%d", &m);
system("cls");
for (i = 0; i < m; i++)
{
printf("请输入学生学号:");
scanf_s("%s", &stu[i].num);
getchar();
printf("请输入学生姓名:");
scanf_s("%s", &stu[i].name);
getchar();
printf("请输入学生平时成绩:");
scanf_s("%f", &stu[i].normalscore);
getchar();
printf("请输入学生期末成绩:");
scanf_s("%f", &stu[i].finalscore);
getchar();
}
}
问一下为什么这个函数执行过程中只执行了一个printf和scanf就结束?
修改如下,供参考:
void input()
{
int i, j, m;
printf("请输入需要统计的学员数:");
scanf_s("%d", &m);
system("cls");
for (i = 0; i < m; i++)
{
printf("请输入学生学号:");
scanf_s("%s", stu[i].num, sizeof(stu[i].num)); //scanf_s("%s", &stu[i].num);
getchar();
printf("请输入学生姓名:");
scanf_s("%s", stu[i].name, sizeof(stu[i].name)); //scanf_s("%s", &stu[i].name);
getchar();
printf("请输入学生平时成绩:");
scanf_s("%f", &stu[i].normalscore);
getchar();
printf("请输入学生期末成绩:");
scanf_s("%f", &stu[i].finalscore);
getchar();
}
}
有完整代码吗,是不是应该是int input()
{
return 0;
}