重庆理工大学课程设计
2.4关键问题
这个系统最主要是要掌握各个函数的方法,比如说成绩的录入,修改,成绩的查询等。 在对学生成绩的录入,修改,求平均分和总分,输出学生的成绩时都要求按不同的方式完成,比如录入,修改,输出成绩扥等。这里我写一个菜单,用一个主函数,分别调用两个子函数。
在成绩修改时注意输出的数据的对应,最后哟啊保存修改的数据,这里最容易被忽略,如果不保存的话,就白费心机啦。
注意自己定义的头文件的数据类型和源文件里面的数据类型要符合,这个函数有点大,随意这种细节一般容易出错。
在输入一个函数数据的时候,应该清空键盘区,很容易出错。
总之来说,编译的时候会有很多错,但是经过改正过后,发现很多都是不必要的或是细节问题。
3 系统实现
3.1 题目一
#include
void view (struct student people[]) {
int i;
printf(\学生成绩管理系统\\n\printf(\printf(\
printf(\学期\\t学号\\t班别\\t姓名\\t语文\\t数学\\t英语\\t计算机\\n\
printf(\for(i=0;i<=number-1;i++) {
*****\\n\
6
重庆理工大学课程设计
}
}
printf(\printf(\printf(\printf(\printf(\printf(\printf(\printf(\printf(\
printf(\
//******************************************************************************************** //按班级统计学生总分和平均分
//******************************************************************************************** void grade(struct student people[]) {
int clas; int aver=0; int sum=0; scanf(\for (int i=0;i sum=people[i].chinese+people[i].math+people[i].english+people[i].computer; aver=sum/4; printf(\第%d个学生总分为:%d\\n\if(people[i].clas==clas) //查找班级 { printf(\第%d个学生的平均分为:%d\\n\ 7 重庆理工大学课程设计 } //******************************************************************************************** //输出某一个学生的信息 //******************************************************************************************** void prnt(struct student people[],int i) { printf(\printf(\姓名\\t语文\\t数学\\t英语\\t计算机\\t不及格科目\\t学生名单\\n\printf(\\\n\{ printf(\printf(\printf(\printf(\ while(1) //输出不及格的学生的成绩 { } } for(i=0;i printf(\ if(people[i].chinese<60) printf(\语文,\ if(people[i].math<60) printf(\数学,\ if(people[i].english<60) printf(\英语,\ printf(\计算机\\t\break; } printf(\ //输出学生的名单 if(people[i].computer<60) 8 重庆理工大学课程设计 } } printf(\ printf(\ //******************************************************************************************** // 按照学号查询学生信息 //******************************************************************************************** void search(struct student people[]) { } //******************************************************************************************** // 按班级输出学生的成绩单 //******************************************************************************************** void search_clas(struct student people[]) { int clas; printf(\请输入班级:\char num[20]; printf(\请输入你要查询的学生学号:\fflush(stdin); gets(num); for(i=0;i if (strcmp(people[i].num,num)==0) { } prnt(people,i); int i; 9 重庆理工大学课程设计 } fflush(stdin); scanf(\for (int i=0;i if(people[i].clas==clas) { } prnt(people,i); //调用prnt 函数输出成绩单 //******************************************************************************************** // 将信息存入磁盘文件 //******************************************************************************************** void save(struct student people[]) { } //*********************************************** // 按学期修改学生成绩 //*********************************************** void xiugai_sem(struct student people[]) { int chinese,math,english,computer; //定义新的成绩变量 char sem[20]; FILE *fp; int i; fp=fopen(\ for(i=0;i fclose(fp); //关闭磁盘文件 fwrite(&people[i],sizeof(student),1,fp); 10