使用c++写出符合下列要求的代码:4. 定义学生类Student,包含成员:学号(num):整型,姓名(name):char [15], 四门课成绩(sc):一维整型数组,然后定义成员函数分别完成以下功能: 1)输入学生信息; 2)显示学生信息; 3)修改学生信息; 4)保存学生信息;(保存为文本,注意对齐) 5)从文件读取学生信息并显示;
时间: 2023-03-10 09:16:51 浏览: 67
#include<stdio.h>
#include<string.h>
#define MAX_STU_NUM 15
typedef struct{
int num;
char name[15];
int sc[4];
}Student;
// 1)输入学生信息;
void Input(Student *stu){
int i;
printf("请输入学号:");
scanf("%d",&stu->num);
printf("请输入姓名:");
scanf("%s",stu->name);
printf("请输入四门课成绩:");
for(i=0;i<4;i++){
scanf("%d",&stu->sc[i]);
}
}
// 2)显示学生信息;
void Show(Student *stu){
int i;
printf("学号:%d\n",stu->num);
printf("姓名:%s\n",stu->name);
for(i=0;i<4;i++){
printf("第%d门课成绩:%d\n",i+1,stu->sc[i]);
}
}
// 3)修改学生信息;
void Modify(Student *stu){
int i;
printf("请输入学号:");
scanf("%d",&stu->num);
printf("请输入姓名:");
scanf("%s",stu->name);
printf("请输入四门课成绩:");
for(i=0;i<4;i++){
scanf("%d",&stu->sc[i]);
}
}
// 4)保存学生信息;(保存为文本,注意对齐)
void Save(Student *stu,FILE *fp){
int i;
fprintf(fp,"%d ",stu->num);
fprintf(fp,"%-15s",stu->name);
for(i=0;i<4;i++){
fprintf(fp,"%d ",stu->sc[i]);
}
fprintf(fp,"\n");
}
// 5)从文件读取学生信息并显示;
void Read(FILE *fp){
Student student;
while(fscanf(fp,"%d %s %d %d %d %d",
&student.num,
student.name,
&student.sc[0],
&student.sc[1],
&student.sc[2],
&student.sc[3]) != EOF){
Show(&student);
}
}