一个简单的学生成绩管理系统附运行结果.docx

上传人:b****1 文档编号:1151658 上传时间:2022-10-18 格式:DOCX 页数:20 大小:104.45KB
下载 相关 举报
一个简单的学生成绩管理系统附运行结果.docx_第1页
第1页 / 共20页
一个简单的学生成绩管理系统附运行结果.docx_第2页
第2页 / 共20页
一个简单的学生成绩管理系统附运行结果.docx_第3页
第3页 / 共20页
一个简单的学生成绩管理系统附运行结果.docx_第4页
第4页 / 共20页
一个简单的学生成绩管理系统附运行结果.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

一个简单的学生成绩管理系统附运行结果.docx

《一个简单的学生成绩管理系统附运行结果.docx》由会员分享,可在线阅读,更多相关《一个简单的学生成绩管理系统附运行结果.docx(20页珍藏版)》请在冰豆网上搜索。

一个简单的学生成绩管理系统附运行结果.docx

一个简单的学生成绩管理系统附运行结果

#include

#include

#include

#defineN100

intiNumOfStu=0;

structscore

{

floatmath;

floatenglish;

floatcomputer;

};

structstudent

{

intnumber;

charname[20];

structscoresco;

floataverage;

};

structstudentstu[N];

voidprint_menu(void);//输出菜单

voidchoosemenu(void);//菜单选择

voidinput_student1(int);//输入学生信息

voidinput_student2(void);//输入总函数

voidinput_student3(int&,int);//判断学号是否重复

voidinput_student4(int,int);//覆盖原信息

voidsort_student3(students[],int);//按照英语成绩排序

voidsort_student4(students[],int);//按照计算机成绩排序

voidsort_student2(students[],int);//按照数学成绩排序

voidsort_student5(students[],int);//按照平均成绩排序

floatinput_score2(int);//计算学生平均成绩

voidprint_student2(void);//显示表头

voidprint_student3(int);//显示学生信息

voidprint_student1(int);//显示全部学生资料

voidsort_student1(void);//排序总函数

voidmenu(void);//菜单调度总函数

intsearch_student2(int);//按学号查询学生信息并输出

voidsearch_student3(int);//按平均分最高查询并输出

voidsearch_student1(void);//查询总函数

voiddelete_student2(int,int);//删除学生信息

voiddelete_student1(void);//删除总函数

voidchange_student2(int);//修改学生资料

voidchange_student1(void);//修改总函数

voidinput_score3(int);//统计成绩

voidinput_score1(void);//统计成绩总函数

voidprint_help(void);//输出帮助信息

voidexit_student(void);//退出系统

voidsave_student(student*,int);//保存学生信息

voidmain()

{

menu();

}

voidsave_student(student*s,inta)//保存学生信息

{

FILE*fp;

if((fp=fopen("d:

\\学生信息.txt","wb"))==NULL)

{

printf("不能打开文件!

\n");

}

else

{

printf("保存信息到D盘\n");

fprintf(fp,"本班所有学生具体信息如下:

\r\n");

fprintf(fp,"学号姓名数学成绩英语成绩计算机成绩平均成绩\r\n");

for(inti=0;i

{

fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i]puter,stu[i].average);

fprintf(fp,"\r\n");

}

fclose(fp);

printf("信息保存成功!

\n");

}

}

voidexit_student(void)//退出系统

{

exit

(1);

}

voidprint_help(void)//输出帮助信息

{

printf("本系统所能容纳的最大学生数为%d人\n学生信息保存在D盘根目录下,保存文件为“学生信息.txt”。

\n感谢使用!

\n",N);

}

voidinput_score1(void)//统计成绩总函数

{

intc;

c=search_student2(iNumOfStu);

printf("学号:

%d\n",stu[c].number);

printf("姓名:

%s\n",stu[c].name);

input_score3(c);

printf("新成绩录入成功!

\n");

stu[c].average=input_score2(c);

}

voidinput_score3(inta)//统计成绩

{

printf("数学新成绩:

");

scanf("%f",&stu[a].sco.math);

printf("英语新成绩:

");

scanf("%f",&stu[a].sco.english);

printf("计算机新成绩:

");

scanf("%f",&stu[a]puter);

}

voidchange_student2(inta)//修改学生资料

{

printf("学号:

%d----修改为:

",stu[a].number);

scanf("%d",&stu[a].number);

getchar();

printf("姓名:

%s----修改为:

",stu[a].name);

gets(stu[a].name);

printf("数学成绩:

%.2f----修改为:

",stu[a].sco.math);

scanf("%f",&stu[a].sco.math);

printf("英语成绩:

%.2f----修改为:

",stu[a].sco.english);

scanf("%f",&stu[a].sco.english);

printf("计算机成绩:

%.2f----修改为:

",stu[a]puter);

scanf("%f",&stu[a]puter);

}

voidchange_student1(void)//修改总函数

{

intc;

c=search_student2(iNumOfStu);

getchar();

printf("是否要修改此学生信息?

(“y”代表是)");

chard;

scanf("%c",&d);

if(d=='y'||d=='Y')

{

change_student2(c);

stu[c].average=input_score2(c);

printf("信息修改成功!

\n");

}

}

voiddelete_student1(void)//删除总函数

{

intc;

c=search_student2(iNumOfStu);

getchar();

printf("是否删除此条记录?

(“y”代表是)");

chard;

scanf("%c",&d);

if(d=='y'||d=='Y')

{

delete_student2(c,iNumOfStu);

printf("记录已删除!

\n");

}

}

voiddelete_student2(inta,intb)//删除学生信息

{

for(inti=a;i

{

stu[i]=stu[i+1];

}

--iNumOfStu;

}

voidsearch_student1(void)//查询总函数

{

printf("1、按学号查询\n2、按平均分最高查询\n请选择:

");

intc;

scanf("%d",&c);

switch(c)

{

case1:

{

search_student2(iNumOfStu);

break;

}

case2:

{

search_student3(iNumOfStu);

break;

}

default:

break;

}

}

voidmenu(void)//菜单调度总函数

{

print_menu();

choosemenu();

}

voidsort_student1(void)//排序总函数

{

printf("1、按数学成绩排序\n2、按英语成绩排序\n3、按计算机成绩排序\n4、按平均成绩排序\n请选择:

");

intc;

scanf("%d",&c);

switch(c)

{

case1:

{

sort_student2(stu,iNumOfStu);

break;

}

case2:

{

sort_student3(stu,iNumOfStu);

break;

}

case3:

{

sort_student4(stu,iNumOfStu);

break;

}

case4:

{

sort_student5(stu,iNumOfStu);

break;

}

default:

break;

}

}

voidprint_student1(inta)//显示全部学生资料

{

printf("本班所有学生具体信息如下\n");

print_student2();

for(inti=0;i

{

print_student3(i);

}

}

voidprint_student3(inta)//显示学生信息

{

printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a]puter,stu[a].average);

}

voidprint_student2(void)//显示表头

{

printf("学号姓名数学成绩英语成绩计算机成绩平均成绩\n");

}

voidinput_student4(inta,intb)//覆盖原信息

{

stu[a]=stu[b-1];

--iNumOfStu;

}

voidinput_student3(int&a,intb)//判断学号是否重复

{

if(a!

=0)

{

inti=0;

do

{

if(stu[a].number==stu[i].number)

{

printf("此学号代表的学生已录入\n1、覆盖原信息\n2、重新输入\n请选择:

");

intc;

scanf("%d",&c);

switch(c)

{

case1:

{

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机软件及应用

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1