C语言,c++编程问题。学生成绩管理,有一个错误帮改下。

来源:百度知道 编辑:UC知道 时间:2024/06/07 19:52:32
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 30
struct student
{
char num [10];
char name[8];
float eng;
float mat;
float phy;
float avr;
} stu[N];
/*录入信息*/
void InputMessage()
{
int i;
for (i=1;i<=N;i++)
{printf("\n 请输入学生姓名:");
scanf("%s",stu[i].name);
printf("\n 请输入学生学号:");
scanf("%s",&stu[i].num);
printf("\n 请输入英语成绩:");
scanf("%f",&stu[i].eng);
printf("\n 请输入数学成绩:");
scanf("%f",&stu[i].mat);
printf("\n请输入物理成绩:");
scanf("%f",stu[i].phy);
printf("\n ---%d个学生信息输入完毕!--\n",i);
}
printf(" \n 按回车键返回主菜单!\n");
getchar();
}
呃。发不下了。
联系zhy.hotmail@126.com

char型数组前面不用加取地址符&!
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 1
struct student
{
char num [10];
char name[8];
float eng;
float mat;
float phy;
float avr;
} stu[N];
/*录入信息*/
void main()
{
int i,s1,s2,s3;
for (i=1;i<=N;i++)
{printf("\n 请输入学生姓名:");
scanf("%s",stu[i].name);
printf("\n 请输入学生学号:");
scanf("%s",stu[i].num);
printf("\n 请输入英语成绩:");
scanf("%f",&s1);
stu[i].eng=s1;
printf("\n 请输入数学成绩:");
scanf("%f",&s2);
stu[i].mat=s2;
printf("\n请输入物理成绩:");
scanf("%f",&s3);
stu[i].phy=s3;
printf("\n ---%d个学生信息输入完毕!--\n",i);
}
printf(" \n 按回车键返回主菜单!\n");
ge