1、 7显示输出60分以下、6079、8089、90分以上各分数段的学生信息。二、详细设计1、数据结构设计#includestdlib.hstring.hwindows.hint n=4;struct student int num; /*学号*/ char name10; /*姓名*/ float score3; /*成绩*/2函数说明1.主函数main()允许用户通过菜单进行功能选择,使用相应的功能代码来调用对应的函数功能。2.其他部分功能函数包括(1) 将学生成绩信息保存为文件void save();算法思想:定义指向文件的指针变量;输入保存路径及文件名,打开文件,若不能打开文件给出提示信息
2、;将存有学生成绩信息的结构体数组信息依次保存到文件中。 (2) 学生成绩信息录入函数void input()依次录入结构体数组中所包含的各个成员;直到输入的结构体成员中信息为4,数据输入结束;返回实际录入的学生成绩信息数。(3)从文件中读出学生成绩信息void output();定义指向结构体变量的指针和指向文件的指针;输入文件的路径,打开文件,若不能打开文件给出提示信息;将文件中的信息依次读出,最后结构体的指针为NULL。3函数设计(1)主菜单函数main()功能:函数返回值为整数,代表所选的菜单项 int main () printf( * n); n 欢迎进入学生成绩记录系统 【1】-
3、创建学生成绩信息 printf(【2】- 显示所有学生成绩信息 【3】- 添加学生成绩信息 【4】- 查询学生成绩信息 【5】- 修改学生的信息 【6】- 按分数段显示学生的信息 【0】- 退出 * n 请输入相应菜单编号: (2)我负责编写的程序A.添加学生信息 void Addstudent() FILE *fp; struct student s; fp=fopen(stu.dat,ab if(fp=fopen()=NULL) File open error! else 请输入所增加学生的 学号 姓名 c语言成绩: scanf(%d,&s.num );%s,s.name);%fs.sco
4、re0); fwrite (&s,sizeof(struct student),1,fp); fclose(fp);/*关闭文件*/ 写入成功!/end function Addstudent;B.修改学生成绩 void modify() int number,i;请输入要修改信息的学生学号: scanf(number); for(i=0;in;i+) if(number=studi.num) break;/*查找判断*/ if(in)/*查找判断*/ printf(请输入修改后的学生的信息:n请输入学生的c语言成绩: scanf(studi.score0); save(); else 没找到
5、该学生的信息n system(pauessystem(clsC.查询学生成绩void namecheck(void);void scorecheck(void);void searchmenu() printf( * 欢迎进入学生成绩查询系统 * n* 1-按姓名查询成绩 * n* 2-按学号查询成绩 * n * 3-返回上一层 * n* 4-退出 * n * n int m;m); switch(m) case 1: namecheck(); system(PAUSECLS case 2: scorecheck(); case 3: main();break; case 4: exit(0); break;void namecheck() 按照姓名查询请按nn请输入姓名:name);查询结果n学号 姓名 c语言成绩n if(strcpy(studi.name,name) printf(%d %s %.2fn,studi.num,studi.name,studi.score0); void scorecheck() int b;按照学号查询请按nn请输入学号:b); for(i=0; if(studi.num =b) 三、程序清单和执行结果1.头文件 #include=90)8089:=80&studi.score090),studi.nu
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1