1、 . #include"stdio.h" #include"stdlib.h" #include"conio.h" #include"string.h" #include"windows.h" //登陆界面函数
2、void load(); void background1(); void choice1(); void fanhui1(); void denglu(); void zhuce(); int chazhao(); //目录界面函数 void mulu(); void background(); void choice(); void add(); void xiugai(); void shanchu(); void del(); void chaxun(); void paixu(); void
3、 tongji(); void output(); void finish(); void fanhui2(); void shuchu(); int zongren(); int chr(); int enr(); int mar(); void back(); float chinese(); float english(); float math(); float zongmax(); //登陆界面构造体 struct self { char a[10]; char b[10]; in
4、t flg; }s[100]={{"admin","admin",1},{"1","1",1}}; //目录界面构造体 struct student { char num[10]; char name[10]; float chinese; float english; float math; float sum; int a; }stu[5]={{"1100","小明",12,18,20,50,1},{"1101","小样",20,80,60,160,1}};
5、 //登陆界面 void main() { load(); } void load() { background1(); choice1(); } void background1() { puts(" "); puts(" "); printf(" ********************************************\n"); printf(" 欢迎登录学生管理系统
6、 "); puts(" "); printf(" ********************************************\n"); printf(" 1.登录 2.注册 \n "); printf(" 请选择:"); } void choice1() { int a; scanf("%d",&a); fflush(stdin); switch(a) { case 1:denglu();break;
7、 case 2:zhuce();break; default:fanhui1();break; } } void fanhui1() { printf(" 输入错误!\n"); printf(" 请重新输入!\n"); system("cls"); load(); } void denglu() { struct self s2; char c; int i=0; int j=0; printf("请输入用户名:\n"); scanf("%s",s2.a); ff
8、lush(stdin); puts(" "); printf("请输入密码:"); c=getch(); while(c!=13) { printf("*"); s2.b[i]=c; i++; while((c=getch())==8) { if(i==0) continue; putchar('\b'); putchar(' '); putchar('\b'); s2.b[--i]=0; } } s2.b[i]=0; s2.flg=1; puts(
9、" "); puts(s2.b); for(i=0;i<100;i++) { if(!strcmp(s[i].a,s2.a)&&!strcmp(s[i].b,s2.b)) { printf("成功!"); system("cls"); printf("\n\n\n\n\n\n\n\n\n\t\t\t欢迎进入学生管理系统\n\n\n"); Sleep(2000); system("cls"); mulu(); } else { j++; } } if
10、j==100) { fanhui1(); } } void zhuce() { struct self s3; char c,d; int i,j; i=0; printf("请输入XX:"); gets(s3.a); puts(s3.a); printf("请输入密码:"); c=getch(); while(c!=13) { printf("*"); s3.b[i]=c; i++; while((c=getch())==8) { if(i==0) contin
11、ue; putchar('\b'); putchar(' '); putchar('\b'); s3.b[--i]=0; } } s3.b[i]=0; s3.flg=1; printf("确定'y' 取消'n'"); scanf("%c",&d); fflush(stdin); if(d=='y'||d=='Y') { j=chazhao(); s[j]=s3; printf("注册成功!"); shuchu(); system("cls"); fanhui1(); }
12、else { fanhui1(); } } int chazhao() { int a,i; for(i=0;i<100;i++) { if(s[i].flg==0) { a=i; break; } } return i; } //目录界面 void mulu() { background(); choice(); } void background() { printf("************
13、\n"); printf("/////////////////////^_^\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \n"); printf("******************************************\n"); puts(" "); printf("欢迎进入学生成绩管理系统"); puts(" "); printf("****************************************\n"); printf(" 请输入业务:\n");
14、puts(" "); 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. 退出\n"); printf("请选择:"); } void choice() { int a; scanf("%d",&a)
15、 fflush(stdin); printf("%d\n",a); switch(a) { case 1: output();break; case 2: add();break; case 3: xiugai();break; case 4: shanchu();break; case 5:del();break; case 6: chaxun();break; case 7: paixu();break; case 8: tongji();break; case 9:finish();break;
16、 default:system("cls");mulu();break; } } void add() { system("cls"); int i; char c,a; shuchu(); printf("1 输入 2 返回主界面\n"); scanf("%d",&a); fflush(stdin); if(a==1) { for(i=0;i<5;i++) { if(stu[i].a==0) break; } printf("请输入学号:"); scanf("%s",stu[i].nu
17、m); fflush(stdin); printf("\n请输入XX:"); scanf("%s",stu[i].name); fflush(stdin); printf("\n请输入语文成绩:"); scanf("%f",&stu[i].chinese); fflush(stdin); printf("\n请输入英语成绩:"); scanf("%f",&stu[i].english); fflush(stdin); printf("\n请输入数学成绩:"); scanf("%f",&stu[i].math); ff
18、lush(stdin); stu[i].a=1; stu[i].sum=stu[i].chinese+stu[i].english+stu[i].math; shuchu(); printf("y返回主界面"); scanf("%c",&c); if(c=='Y'||c=='y') { system("cls"); mulu(); } else { add(); } } else if(a==2) { system("cls"); mulu(); } else {
19、 printf("输入错误,请重新输入!"); system("cls"); add(); } } void xiugai() { char a; system("cls"); shuchu(); printf("1 修改 2 返回主界面"); scanf("%d",&a); fflush(stdin); if(a==1) { char b[10]; char c; int i; int j=0; printf("请输入需要修改的人的XX或者学号:"); gets(b); fflush(stdin)
20、 puts(" "); puts(b); for(i=0;i<5;i++) { if(!strcmp(stu[i].name,b)||!strcmp(stu[i].num,b)) { printf("\n请输入需要修改的学号:"); scanf("%s",stu[i].num); fflush(stdin); printf("\n请输入需要修改的XX:"); scanf("%s",stu[i].name); fflush(stdin); printf("\n请输入需要修改的语文成绩:
21、"); scanf("%f",&stu[i].chinese); fflush(stdin); printf("\n请输入需要修改的英语成绩:"); scanf("%f",&stu[i].english); fflush(stdin); printf("\n请输入需要修改的数学成绩成绩:"); scanf("%f",&stu[i].math); fflush(stdin); stu[i].sum=stu[i].chinese+stu[i].english+stu[i].math; break;
22、 } else { j++; } } if(j==5) { printf("输入错误,请重新输入!"); system("cls"); xiugai(); } system("cls"); shuchu(); printf("y返回主界面"); scanf("%c",&c); if(c=='Y'||c=='y') { system("cls"); mulu(); } else { xiugai(); } } else
23、 if(a==2) { system("cls"); mulu(); } else { printf("输入错误,请重新输入!"); system("cls"); xiugai(); } } void shanchu() { char a; int j=0; char c; system("cls"); shuchu(); printf("1 删除 2返回主界面:"); scanf("%d",&a); fflush(stdin); if(a==1) { int i; char b[10]
24、 printf("请输入需要删除的人的学号或者XX:"); gets(b); fflush(stdin); for(i=0;i<5;i++) { if(!strcmp(stu[i].name,b)||!strcmp(stu[i].num,b)) { stu[i].a=0; printf("删除成功!"); break; } else { j++; } } if(j==5) { printf("输入错误,请重新输入!"); shanchu();
25、 } printf("是否返回主界面:(y是)"); scanf("%c",&c); if(c=='y'||c=='Y') { system("cls"); mulu(); } else { shanchu(); } } else if(a==2) { system("cls"); mulu(); } else { shanchu(); } } void del() { char a; system("cls"); shuchu(); printf(
26、"1 清空 2 返回主界面"); scanf("%d",&a); fflush(stdin); if(a==1) { char c; printf("确定?(y确定)"); scanf("%c",&c); fflush(stdin); if(a=='Y'||a=='y') { int i; for(i=0;i<5;i++) { stu[i].a=0; } system("cls"); del(); } else { del(); } } els
27、e if(a==2) { system("cls"); mulu(); } else { printf("输入错误,请重新输入!"); del(); } } void chaxun() { char a; int j=0; system("cls"); printf("1 查询 2 返回主界面"); printf("请选择;"); scanf("%d",&a); fflush(stdin); if(a==1) { char b[10]; char c; int i; printf("
28、请输入需要查询的人的学号或者XX:"); gets(b); for(i=0;i<5;i++) { if(!strcmp(stu[i].name,b)||!strcmp(stu[i].num,b)) { printf("\n学号:%-6s",stu[i].num); printf("\nXX:%-6s",stu[i].name); printf("\n语文成绩:%-6.2f",stu[i].chinese); printf("\n英语成绩:%-6.2f",stu[i].english); printf("\n数学
29、成绩:%-6.2f",stu[i].math); printf("\n总成绩:%-6.2f",stu[i].sum); break; } else { j++; } } if(j==5) { printf("输入错误,请重新输入!"); chaxun(); } printf("是否返回主页面:(y是)"); scanf("%c",&c); fflush(stdin); if(c=='y'||c=='Y') { system("cls"); mulu
30、); } else { printf("继续查找!"); chaxun(); } } else if(a==2) { system("cls"); mulu(); } else { printf("输入错误,请重新输入!"); chaxun(); } } void paixu() { char a; char c; system("cls"); shuchu(); printf("1 排序 2返回主界面"); scanf("%d",&a); fflush(s
31、tdin); if(a==1) { int i,j; int aa; struct student s; printf("1 降序排列 2 升序排列"); printf("请选择:"); scanf("%d",&aa); fflush(stdin); for(i=0;i<5;i++) { for(j=0;j<4;j++) { if(aa==1) { if(strcmp(stu[j].num,stu[j+1].num)<0) { s=stu[j];
32、 stu[j]=stu[j+1]; stu[j+1]=s; } } if(aa==2) { if(strcmp(stu[j].num,stu[j+1].num)>0) { s=stu[j]; stu[j]=stu[j+1]; stu[j+1]=s; } } } } if(aa!=1&&aa!=2) { printf("输入错误,请重新输入!"); system("cls"); paixu();
33、 } shuchu(); printf("是否返回主界面:(y是)"); scanf("%c",&c); fflush(stdin); if(c=='Y'||c=='y') { system("cls"); mulu(); } else { printf("继续!"); paixu(); } } else if(a==2) { system("cls"); mulu(); } else { printf("输入错误,请重新输入!"); paixu();
34、 } } void tongji() { system("cls"); char a; printf("1 统计 2 返回主界面"); scanf("%d",&a); fflush(stdin); if(a==1) { char c; printf("请输入统计条件:\n"); printf(" 1.参加考试的学生人数\n"); printf(" 2.语文最高分\n"); printf(" 3语文及格的人数\n"); printf("
35、 4.语文及格率\n"); printf(" 5.英语最高分\n"); printf(" 6.英语及格的人数\n"); printf(" 7.英语及格率\n"); printf(" 8.数学最高分\n"); printf(" 9.数学及格人数\n"); printf(" 10.数学及格率\n"); printf(" 11.总成绩最高\n"); printf("请
36、选择:"); scanf("%d",&c); fflush(stdin); if(c==1) { int j; j=zongren(); printf("参加考试的人数是:%d",j); back(); } else if(c==2) { float a; a=chinese(); printf("语文最高分为:%.2f",a); back(); } else if(c==3) { int a; a=chr(); printf("语文及
37、格的人数为:%d",a); back(); } else if(c==4) { int a,b; a=zongren(); b=chr(); printf("语文的及格率为:%d",b/a); back(); } else if(c==5) { float a; a=english(); printf("英语的最高分为%.2f:",a); back(); } else if(c==6) { int a; a=enr(); print
38、f("英语及格的人数为:%d",a); back(); } else if(c==7) { int a,b; a=zongren(); b=enr(); printf("英语的及格率为:%.2f",b/a); back(); } else if(c==8) { float a; a=math(); printf("数学的最高分为%.2f:",a); back(); } else if(c==9) { int a; a=mar();
39、printf("数学及格的人数为:%d",a); back(); } else if(c==10) { int a,b; a=zongren(); b=enr(); printf("数学的及格率为:%.2f",b/a); back(); } else if(c==11) { float a; a=zongmax(); printf("总分最高为:.2f",a); back(); } else { printf("输入错误,请重新输入!"); sy
40、stem("cls"); tongji(); } } else if(a==2) { system("cls"); mulu(); } else { printf("输入错误,请重新输入!"); tongji(); } } int zongren() { int i,a=0; for(i=0;i<5;i++) { if(stu[i].a==1) { a++; } } return a; } float chinese() { float max; int
41、 i;
max=stu[0].chinese;
for(i=0;i<5;i++)
{
if(stu[i].a==1)
{
if(max 42、
{
max=stu[i].english;
}
}
}
return max;
}
float math()
{
float max;
int i;
max=stu[0].math;
for(i=0;i<5;i++)
{
if(stu[i].a==1)
{
if(max 43、i=0;i<5;i++)
{
if(stu[i].a==1)
{
if(max 44、for(i=0;i<5;i++)
{
if(stu[i].a==1)
{
if(stu[i].english>=60)
{
a++;
}
}
}
return a;
}
int mar()
{
int i,a=0;
for(i=0;i<5;i++)
{
if(stu[i].a==1)
{
if(stu[i].math>=60)
{
a++;
}
}
}
return a;
}
/*void fanhui2()
{
char c;
print 45、f("是否返回主界面:");
scanf("%c",&c);
if(c=='Y'||c=='y')
{
}
}*/
void shuchu()
{
int i;
printf("学号 ");
printf(" XX ");
printf(" 语文 ");
printf(" 英语 ");
printf(" 数学 ");
printf(" 总分 ");
puts(" ");
for(i=0;i<5;i++)
{
if(stu[i].a==1)
{
printf("%-6s",stu[i].num);
pr 46、intf("%-6s",stu[i].name);
printf("%-6.2f",stu[i].chinese);
printf("%-6.2f",stu[i].english);
printf("%-6.2f",stu[i].math);
printf("%-6.2f",stu[i].sum);
puts(" ");
}
}
}
void output()
{
char c='a';
system("cls");
shuchu();
printf("是否返回主界面:(y是)");
scanf("%c",&c);
i 47、f(c=='y'||c=='Y')
{
system("cls");
mulu();
}
else
{
printf("输入错误,请重新输入!");
output();
}
}
void back()
{
char d;
printf("\n返回任意系统:任意键 返回主界面:y键");
printf("请选择:");
scanf("%c",&d);
fflush(stdin);
if(d=='Y'||d=='y')
{
system("cls");
mulu();
}
else
{
printf("继续");
tongji();
}
}
void finish()
{
exit(0);
}
. .word.zl.






