c语言学生成绩管理系统源代码.doc

上传人:b****1 文档编号:230529 上传时间:2022-10-07 格式:DOC 页数:15 大小:28.50KB
下载 相关 举报
c语言学生成绩管理系统源代码.doc_第1页
第1页 / 共15页
c语言学生成绩管理系统源代码.doc_第2页
第2页 / 共15页
c语言学生成绩管理系统源代码.doc_第3页
第3页 / 共15页
c语言学生成绩管理系统源代码.doc_第4页
第4页 / 共15页
c语言学生成绩管理系统源代码.doc_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

c语言学生成绩管理系统源代码.doc

《c语言学生成绩管理系统源代码.doc》由会员分享,可在线阅读,更多相关《c语言学生成绩管理系统源代码.doc(15页珍藏版)》请在冰豆网上搜索。

c语言学生成绩管理系统源代码.doc

#include

#include

#include

typedefstructstu

{

charsz_Name[20];

charsz_ID[11];

charsz_Class[10];

floatr_Score[3];

}student;

#defineSTU_MAXSIZE60

inti_stuSize;

studentstu[STU_MAXSIZE];

/*==========显示主菜单=============*/

voidDis_Main_Menu()

{

printf("\n学生成绩管理系统\n");

printf("-----------------------\n");

printf("1:

新录入书生成绩\n");

printf("2:

修改学生成绩\n");

printf("3:

学生成绩查寻\n");

printf("4:

平均成绩和排序\n");

printf("5:

显示班级成绩单\n");

printf("6:

追加学生成绩\n");

printf("0:

推出\n");

printf("-----------------------\n");

}

/*=============录入学生成绩============*/

voidInput_Stu_Information(studentstu[])

{

inti;

printf("请依次输入学生成绩信息(姓名学号班级数学语文化学):

\n");

for(i=0;i

{

printf("Student%d:

",i+1);

scanf("%s%s%s",stu[i].sz_Name,stu[i].sz_ID,stu[i].sz_Class);

scanf("%f%f%f",&stu[i].r_Score[0],&stu[i].r_Score[1],&stu[i].r_Score[2]);

}

}

/*==============将信息存入scorefile.dat文件===========*/

voidSave_File(studentstu[])

{

FILE*fp;

inti;

if((fp=fopen("c:

\\scorefile.dat","wb"))==NULL)

{

printf("Save_File函数打开文件c:

\\scorefile.dat!

失败,按任意键退出!

\n");

exit

(1);

}

for(i=0;i

if(fwrite(&stu[i],sizeof(student),1,fp)!

=1)

{

printf("Writerfileerror!

\n");

exit

(1);

}

fclose(fp);

}

/*===============主菜单第一项:

新录入成绩==========*/

intInput_Data()

{

printf("\n请输入学生实际人数:

");

scanf("%d",&i_stuSize);

Input_Stu_Information(stu);

Save_File(stu);

return(i_stuSize);

}

/*=================学生成绩查询菜单=============*/

voidDis_Search_Menu()

{

printf("\n学生成绩查询\n");

printf("\n-------------------\n");

printf("\n1:

按学号查询\n");

printf("\n2:

按科目查询\n");

printf("\n0:

退出\n");

printf("\n-------------------\n");

}

/*===============按学号查询===========*/

intSearch_ID(charsz_ID[11])

{

inti;

for(i=0;i

{

if(!

strcmp(sz_ID,stu[i].sz_ID))

{

printf("姓名\t学号\t班级\t数学\t\t语文\t\t化学\n");

printf("--------------------------------------\n");

printf("%S\t%s\t%s",stu[i].sz_Name,stu[i].sz_ID,stu[i].sz_Class);

printf("\t%-8.1f\t%-8.1f\t%-8.1f\n",stu[i].r_Score[0],stu[i].r_Score[1],

stu[i].r_Score[2]);

break;

}

}

if(i==i_stuSize)printf("学号输入有误!

没有该学生!

\n");

return(i);

}

/*=============按科目查询==========*/

voidSearch_Course(intcourse)

{

inti;

switch(course)

{

case1:

printf("\n姓名\t学号\t班级\t数学\n");break;

case2:

printf("\n姓名\t学号\t班级\t语文\n");break;

case3:

printf("\n姓名\t学号\t班级\t化学\n");break;

default:

printf("\n课程号错误!

\n");return;

}

printf("-------------------------------\n");

for(i=0;i

{

printf("%s\t%s\t%s",stu[i].sz_Name,stu[i].sz_ID,stu[i].sz_Class);

printf("\t%-8.1f\n",stu[i].r_Score[course-1]);

}

printf("---------------------------------------\n");

}

/*=================主页第二项:

修改学生成绩==============*/

voidModify_Data()

{

inti=0;

chars_ID[11];

FILE*fp;

if((fp=fopen("c:

\\scorefile.dat","wb"))==NULL)

{

printf("Modify_Data函数打开文件c:

\\scorefile.dat!

失败,按任意键退出!

");

return;

}

printf("请输入要修改的学生学号:

");

scanf("%s",s_ID);

i=Search_ID(s_ID);

printf("请按【数学语文化学】顺序输入成绩:

");

scanf("%f%f%f",&stu[i].r_Score[0],&stu[i].r_Score[1],&stu[i].r_Score[2]);

fwrite(&stu[i],sizeof(student),i_stuSize,fp);

fclose(fp);

}

/*=============主菜单第三项:

学生成绩查询============*/

voidSearch_Data()

{

intSelect,flag=1;

intcourse;

chars_id[11];

while(flag)

{

Dis_Search_Menu();

printf("请输入所选查询功能号:

");

scanf("%d",&Select);

switch(Select)

{

case1:

printf("请输入查询学号:

");

scanf("%s",s_id);

Search_ID(s_id);

break;

case2:

printf("请输入查询科目号:

1数学,2语文3化学\n");

scanf("%d",&course);

Search_Course(course);

break;

default:

printf("输入有错误,重新选择!

\n");

break;

}

if(Select==0)

flag=0;

else

flag=1;

}

}

/*===============成绩排序==============*/

voidSort(floataverage[STU_MAXSIZE])

{

inti,j,k;

studentstemp;

floatave;

for(i=0;i

{

k=i;

for(j=i;j

if(average[j]

if(k!

=i)

{

stemp=stu[i];

stu[i]=stu[k];

stu[k]=stemp;

ave=average[i];

average[i]=average[k];

average[k]=ave;

}

}

}

/*===============主菜单第四项:

计算平均成绩和排序=========*/

voidAverage_Sort()

{

inti;

floatsum,average[STU_MAXSIZE];

for(i=0;i

{

sum=stu[i].r_Score[0]+stu[i].r_Score[1]+stu[i].r_Score[2];

average[i]=sum/3;

}

Sort(average);

printf("\n\t\t\t按平均成绩升序先是成绩\n");

printf("\t\t\t=========================\n");

printf("姓名\t学号\t班级\t数学\t\t语文\t\t化学\t\t平均成绩\n");

printf("--------------------------------\n");

for(i=0;i

{

printf("%s\t%s\t%s",stu[i].sz_Name,stu[i].sz_ID,stu[i].sz_Class);

printf("\t%-8.1f\t%-8.1f\t%-8.1f",stu[i].r_Score[0],stu[i].r_Score[1],stu[i].r_Score[2]);

printf("\t%-8.1f\n",average[i]);

}

printf("------------

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

当前位置:首页 > 考试认证 > IT认证

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

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