1、C语言版简单成绩查询系统源代码/ main.c/ xueshengchengji/ Created by lxb on 13-9-16./ Copyright (c) 2013年 _MyCompanyName_. All rights reserved./#include #include stdlib.h#include string.hstruct Student char name20; char xuehao20; int shuxue ; int yingyu ; int Cyuyan ;void menu(void); /老师登陆后操作界面void menu1(void);/老师登
2、陆void menu2(void);/输入成绩界面void menu3(void);/学生凭密码登陆界面void menu4(void);/学生登陆操作业面void menu5(void);/老师修改学生成绩void menu6(void);/老师查找平均成绩void menu7(int *a,int *b);/查看分数段内的人数void menu8(void);/查询不及格的人数void menu9(void);/打印全体学生成绩void menu10(void);/老师查看单独学生成绩void menu11(void);/老师修改密码void menu12(void);/通过学号查找成绩v
3、oid menu13(void);/学生修改密码void read(void);void write(void);static struct Student stu100;static int renshu=0;static char password1=123456;static char password2=654321;FILE *p=NULL;FILE *p1=NULL;FILE *p2=NULL;FILE *p3=NULL;int main (int argc, const char * argv) read(); printf(*主菜单*n); printf( 1教师登陆ttttt
4、2学生登陆n); printf(n); printf(n); printf(*n); printf(请选择服务项目:); int a; scanf(%d,&a); switch (a) case 1: menu1();/laoshidenglu break; case 2: menu3(); break; default: break; return 0;void menu1()/老师登陆 char a20; printf(请输入您的个人密码:); scanf(%s,a); if (strcmp(a,password1)=0) printf(密码输入正确!); menu(); else pri
5、ntf(您输入的密码错误!); menu1(); void menu()/老师登陆后操作界面 printf(请选择操作: n); printf(1,输入学生成绩n); printf(2,修改学生成绩n); printf(3,查看每科的总体平均成绩n); printf(4,查看分数段分数n); printf(5,查询不及格人数n); printf(6,打印全体学生成绩n); printf(7,查找单个学生成绩n); printf(8,修改密码n); printf(9,保存并安全退出); printf(n); int a; scanf(%d,&a); if (a=1) menu2(); else
6、if(a=2) menu5(); else if(a=3) menu6(); else if(a=4) int j,k; printf(请输入一个分数段的起始分数); scanf(%d,&j); printf(请再输入一个分数段的结束分数); scanf(%d,&k); menu7(&j,&k); else if(a=5) menu8(); else if(a=6) menu9(); else if(a=7) menu10(); else if(a=8) printf(请输入旧密码); char b20; scanf(%s,&b); if (strcmp(b, password1)=0) me
7、nu11(); else printf(密码错误); menu(); else if(a=9) write(); printf(您已经安全退出。); exit(0); void menu2()/输入成绩界面 int i; i=renshu; char b20; printf(请输入姓名:); scanf(%s,stui.name); printf(输入学号:); scanf(%s,&b); for (int i=0; irenshu; i+) if (strcmp(b, stui.xuehao)=0) printf(您输入的学号已经存在,请重新输入n); menu2(); strcpy(stu
8、i.xuehao, b); printf(数学成绩:); scanf(%d,&stui.shuxue); printf(英语成绩:); scanf(%d,&stui.yingyu); printf(C语言成绩:); scanf(%d,&stui.Cyuyan); printf(继续请按1,其他请按2n); int a; scanf(%d,&a); if (a=1) renshu+; menu2(); else printf(输入完毕,正在退出。n); renshu+; menu(); void menu3() /学生凭密码登陆界面 char a20; printf(请输入您的个人密码:); s
9、canf(%s,a); if (strcmp(a, password2)=0) printf(密码输入正确!n); menu4(); else printf(您输入的密码错误!); menu3(); void menu4() /学生选择页面 printf(请选择操作:n); printf(1,查询成绩n); printf(2,修改密码n); printf(3,保存并退出n); int a; scanf(%d,&a); if (a=1) menu12(); else if(a=2) printf(请输入旧密码:); char b20; scanf(%s,b); if (strcmp(b, pas
10、sword2)=0) menu13(); else printf(密码错误n); menu4(); else if(a=3) write(); exit(0); void menu5() printf(请输入您要修改的学生的学号); printf(注意学号必须是比0大的整数:n); char a20; int c=0; scanf(%s,a); for (int j=0; j100; j+) if (strcmp(a, stuj.xuehao)=0) printf(请输入数学成绩); scanf(%d,&stuj.shuxue); printf(请输入英语成绩); scanf(%d,&stuj
11、.yingyu); printf(请输入C语言成绩); scanf(%d,&stuj.Cyuyan); c=1; break; if (c=0) printf(输入的学号有误,请重新输入:); menu5(); printf(修改完毕请选择操作:1继续 按2键退到操作系统); int b; scanf(%d,&b); if (b=1) menu5(); else if(b=2) menu(); void menu6() float sum1=0; float sum2=0; float sum3=0; for (int j=0; jrenshu; j+) sum1+=stuj.shuxue;
12、sum2+=stuj.yingyu; sum3+=stuj.Cyuyan; printf(英语的总体平均成绩为:); printf(%.2f,sum1/(renshu); printf(n); printf(数学的总体平均成绩为:); printf(%.2f,sum2/(renshu); printf(n); printf(C语言的总体平均成绩为:); printf(%.2f,sum3/(renshu); printf(n); printf(查看完毕. ); menu();void menu7(int *a,int *b) int l=0; int m=0; int c=0; for (int
13、 i=0; i=*a&stui.shuxue=*b) l+; for (int i=0; i=*a&stui.yingyu=*b) m+; for (int i=0; i=*a&stui.Cyuyan=*b) c+; printf(数学成绩在这个分数段的人数是%d人n,l); printf(英语成绩在这个分数段的人数是%d人n,m); printf(C语言成绩在这个分数段的人数是%d人n,c); printf(Searching mission is over.n); menu();void menu8() int a=0; int b=0; int c=0; for (int i=0; ir
14、enshu; i+) if (stui.shuxue60) a+; if(stui.yingyu60) b+; if(stui.Cyuyan60) c+; printf(数学不及格的人数为:%dn,a); printf(英语不及格的人数为:%dn,b); printf(C语言不及格的人数为:%dn,c); menu();void menu9() for (int i=0; irenshu; i+) printf(姓名:%sn,stui.name); printf(学号:%sn,stui.xuehao); printf(数学分数:%dn,stui.shuxue); printf(英语分数:%dn
15、,stui.yingyu); printf(C语言分数:%dn,stui.Cyuyan); menu();void menu10() char a20; printf(请输入学号:); scanf(%s,a); int i; int c=0; for ( i=0; irenshu; i+) if (strcmp(a, stui.xuehao)=0) printf(您要查找学生姓名是:%sn,stui.name); printf(数学成绩是:%dn,stui.shuxue); printf(英语成绩是:%dn,stui.yingyu); printf(C语言成绩是:%dn,stui.Cyuyan
16、); c=1; if (c=1) printf(是否继续查找?1是2退到主页面); int l=0; scanf(%d,&l); if (l=1) menu10(); else menu(); if (c=0) printf(对不起,没有该学号对应的学生!按1重新输入,其他数字键退出); int b; scanf(%d,&b); if (b=1) menu10(); else menu(); void menu11() printf(请输入新的密码:(注意密码必须是整数)); char b20; scanf(%s,&b); printf(请在输入一次新密码:); char c20; scanf
17、(%s,&c); if (strcmp(b, c)=0) printf(修改密码成功!n); strcpy(password1, b); menu(); else if(strcmp(b, c)!=0) printf(两次输入的密码不一样,请重新输入.n); menu11(); void menu12()/学生查询成绩 char a20; printf(请输入学号:); scanf(%s,a); int c=0; for ( int i=0; irenshu; i+) if (strcmp(a, stui.xuehao)=0) printf(您要查找的姓名是:%sn,stui.name); p
18、rintf(数学成绩是:%dn,stui.shuxue); printf(英语成绩是:%dn,stui.yingyu); printf(C语言成绩是:%dn,stui.Cyuyan); c=1; if (c=0) printf(not found); menu4(); printf(请选择操作1继续,2键退出); int b; scanf(%d,&b); if (b=1) menu12(); else if(b=2) menu4(); void menu13()/学生修改密码 printf(请输入新的密码:(注意密码必须是整数); char b20; scanf(%s,&b); printf(
19、请在输入一次新密码:); char c20; scanf(%s,&c); if (strcmp(b, c)=0) printf(修改密码成功!n); strcpy(password2, b); menu4(); else if(strcmp(b, c)!=0) printf(两次输入的密码不一样,请重新输入.n); menu13(); void write() p=fopen(/Users/ldci/Desktop/chengjiguanli2, w); if (p=NULL) exit(1); /fscanf(p, %d,renshu); fwrite(&stu, sizeof(stu100
20、),100, p); fclose(p); p1=fopen(/Users/ldci/Desktop/chengjiguanli1, w); if (p1=NULL) exit(1); fwrite(&renshu, sizeof(int), 1, p1); /fwrite(&stu, sizeof(stu100),100, p); fclose(p1); p2=fopen(/Users/ldci/Desktop/password1, w); if (p2=NULL) exit(1); fwrite(password1, sizeof(char), 20, p2); fclose(p2); p
21、3=fopen(/Users/ldci/Desktop/password2, w); if (p3=NULL) exit(1); fwrite(password2, sizeof(char), 20, p3); fclose(p3);void read() p=fopen(/Users/ldci/Desktop/chengjiguanli2, r); if (p=NULL) return; fread(&stu, sizeof(stu100), 100, p); p1=fopen(/Users/ldci/Desktop/chengjiguanli1, r); if (p1=NULL) return; fread(&renshu, sizeof(int), 1, p1); p2=fopen(/Users/ldci/Desktop/password1, r); if (p2=NULL) return; fread(password1, sizeof(char), 20, p2); p3=fopen(/Users/ldci/Desktop/password2, r); if (p3=NULL) return; fread(password2, sizeof(char), 20, p3);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1