学生成绩查询c语言程序.docx

上传人:b****3 文档编号:11542083 上传时间:2023-06-01 格式:DOCX 页数:13 大小:16.27KB
下载 相关 举报
学生成绩查询c语言程序.docx_第1页
第1页 / 共13页
学生成绩查询c语言程序.docx_第2页
第2页 / 共13页
学生成绩查询c语言程序.docx_第3页
第3页 / 共13页
学生成绩查询c语言程序.docx_第4页
第4页 / 共13页
学生成绩查询c语言程序.docx_第5页
第5页 / 共13页
学生成绩查询c语言程序.docx_第6页
第6页 / 共13页
学生成绩查询c语言程序.docx_第7页
第7页 / 共13页
学生成绩查询c语言程序.docx_第8页
第8页 / 共13页
学生成绩查询c语言程序.docx_第9页
第9页 / 共13页
学生成绩查询c语言程序.docx_第10页
第10页 / 共13页
学生成绩查询c语言程序.docx_第11页
第11页 / 共13页
学生成绩查询c语言程序.docx_第12页
第12页 / 共13页
学生成绩查询c语言程序.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

学生成绩查询c语言程序.docx

《学生成绩查询c语言程序.docx》由会员分享,可在线阅读,更多相关《学生成绩查询c语言程序.docx(13页珍藏版)》请在冰点文库上搜索。

学生成绩查询c语言程序.docx

学生成绩查询c语言程序

填写说明:

1、同一名教师在不同教学班教授的同一门课程只须填写一份教学日历;由不同教师教授的同一门课程每人填写一份教学日历。

2、“作业、实验”栏中的作业,是指教师计划布置的,应该批改的作业。

3、法定假日不安排教学内容,其课次顺延安排。

系统开发语言作业

现有一个班级,共10人,本学期共学习三门课程,设计一个学生成绩管理系统,要求如下:

1、完成三门课程成绩输入;或单门课程录入、或同时录入三门课。

2、完成成绩排序:

按单科成绩排序、按平均分排序;

3、完成成绩统计:

按单科分段统计人数、按平均分分段统计(60分以下,60-79分,80以上);

4、用结构体完成学生姓名和成绩的输入:

5、完成成绩查询:

单科查询、平均分查询、按姓名查询、分段查询等;

6、完成奖学金统计:

三门课均高于90分,一等奖学金;三门课均高于80分,二等奖学金,统计获奖学金人数

7、完成成绩输出:

按单科输出、输出所有成绩、按平均分由高到低输出,输出奖学金名单等;.

作业要求

第1、2、3周、完成成绩录入、排序和统计

第4、5、6周、完成菜单和函数编制

第2、8、9周、完成成绩查询和统计

第10、11周、完成查询输出

第12、13周、讲程序进行函数化、模块化

第14、15周、应用指针、指针函数以及函数指针等

第16周,完善程序、验收。

最后打印出完整代码清单

 

代码如下:

 

#include

structstudent

{

floatmath;

floatChinese;

floatEnglish;

floataverage;

charname[5];

};

voidinputgread(structstudentstu)//输入成绩

{

inta=0;

scanf("%s",stu.name);

printf("按顺序输入数学成绩,语文成绩,英语成绩");

scanf("%f%f%f",&stu.math,&stu.Chinese,&stu.English);

}

 

voidChinesecompositor(structstudentstu[])//按语文排序

{

intnum=0,num2=0;

structstudentp;

for(num2;num2<9;num2++)

{

for(num;num<9;num++)

{

if(stu[num].Chinese

{

p=stu[num];

stu[num]=stu[num+1];

stu[num+1]=p;

}

}

}

for(num=0;num<10;num++)

{

printf("%c:

%f",stu[num].name,stu[num].Chinese);

}

}

 

voidmathcompositor(structstudentstu[])//按数学排序

{

intnum=0,num2=0;

structstudentp;

for(num2;num2<9;num2++)

{

for(num;num<9;num++)

{

if(stu[num].math

{

p=stu[num];

stu[num]=stu[num+1];

stu[num+1]=p;

}

}

}

for(num=0;num<10;num++)

{

printf("%c:

%f",stu[num].name,stu[num].math);

}

}

 

voidEnglishcompositor(structstudentstu[])//按英语排序

{

intnum=0,num2=0;

structstudentp;

for(num2;num2<9;num2++)

{

for(num;num<9;num++)

{

if(stu[num].English

{

p=stu[num];

stu[num]=stu[num+1];

stu[num+1]=p;

}

}

}

for(num=0;num<10;num++)

{

printf("%c:

%f",stu[num].name,stu[num].English);

}

}

voidAverage(structstudentstu)//平均分

{

intnum=0;

stu.average=(stu.Chinese+stu.English+stu.math)/3;

}

voidAveragecompositor(structstudentstu[])//按平均分排序

{

intnum=0,num2=0;

structstudentp;

for(num2;num2<9;num2++)

{

for(num;num<9;num++)

{

if(stu[num].average

{

p=stu[num];

stu[num]=stu[num+1];

stu[num+1]=p;

}

}

}

for(num=0;num<10;num++)

{

printf("%c:

%f",stu[num].name,stu[num].average);

}

}

voidnamecheck(structstudentstu[],char*na)//按姓名查询

{

intnum=0;

for(num;num<10;num++)

{

if(na==stu[num].name)

{

printf("姓名:

%s数学:

%f语文:

%f英语:

%f",stu[num].name,stu[num].math,stu[num].English);

}

}

}

voidscholarship(structstudentstu[])//奖学金

{

intnum=0,count=0;

printf("一等奖学金名单:

\n");

for(num;num<10;num++)

{

if(stu[num].Chinese>=90&&stu[num].English>=90&&stu[num].math>=90)

{

printf("%s",stu[num].name);

count++;

}

}

printf("\n二等奖学金名单:

\n");

for(num;num<10;num++)

{

if(stu[num].Chinese>=80&&stu[num].English>=80&&stu[num].math>=80)

{

printf("%s",stu[num].name);

count++;

}

}

printf("奖学金人数:

%d",count);

}

voidscorecut(structstudentstu[],intn)//分数段

{

intnum=0,count=0;

switch(n)

{

case1:

{

printf("语文成绩分数段:

\n");

printf("90分以上:

\n");

for(num;num<10;num++)

{

if(stu[num].Chinese>=90){printf("%s\n",stu[num].name);}

}

printf("80---90:

\n");

for(num=0;num<10;num++)

{

if(stu[num].Chinese>=80&&stu[num].Chinese<90){printf("%s\n",stu[num].name);}

}

printf("70--80:

\n");

for(num=0;num<10;num++)

{

if(stu[num].Chinese>=70&&stu[num].Chinese<80){printf("%s\n",stu[num].name);}

}

printf("60--70:

\n");

for(num=0;num<10;num++)

{

if(stu[num].Chinese>=60&&stu[num].Chinese<70){printf("%s\n",stu[num].name);}

}

printf("不及格:

\n");

for(num=0;num<10;num++)

{

if(stu[num].Chinese<60){printf("%s\n",stu[num].name);}

}

}

case2:

{

printf("平均分成绩分段:

\n");

printf("90分以上:

\n");

for(num;num<10;num++)

{

if(stu[num].average>=90){printf("%s\n",stu[num].name);}

}

printf("80---90:

\n");

for(num=0;num<10;num++)

{

if(stu[num].average>=80&&stu[num].average<90){printf("%s\n",stu[num].name);}

}

printf("70--80:

\n");

for(num=0;num<10;num++)

{

if(stu[num].average>=70&&stu[num].average<80){printf("%s\n",stu[num].name);}

}

printf("60--70:

\n");

for(num=0;num<10;num++)

{

if(stu[num].average>=60&&stu[num].average<70){printf("%s\n",stu[num].name);}

}

printf("不及格:

\n");

for(num=0;num<10;num++)

{

if(stu[num].average<60){printf("%s\n",stu[num].name);}

}

}

}

}

voidmenu()

{

printf("1.成绩录入\n");

printf("2.成绩查询\n");

printf("3.分数段查询\n");

printf("4.奖学金查询\n");

printf("5.成绩排序\n");

}

 

main()

{

structstudentstu[10];

intnum=0,n;

char*na;

while

(1)

{

menu();

scanf("%d",&n);

switch(n)

{

case1:

for(num;num<10;num++)

{

printf("输入第%d个学生姓名",num+1);

inputgread(stu[num]);

Average(stu[num]);

}break;

case2:

{

printf("1.按姓名查询\n");

printf("2.查询平均分\n");

printf("3.退出查询\n");

scanf("%d",&n);

switch(n)

{

case1:

{printf("输入学生姓名:

");

scanf("%s",&na);

namecheck(stu,na);

}

case2:

{

for(num=0;num<10;num++)

{

printf("3科平均分:

\n");

printf("%c:

%f\n",stu[num].name,stu[num].average);

}

}

case3:

break;

}

}

case3:

{

}

case4:

{printf("1.语文单科成绩分段\n");

printf("2.平均分分段\n");

scanf("%d",&n);

switch(n)

{

case1:

scorecut(stu,n);

case2:

scorecut(stu,n);

case3:

break;

}

}

case5:

{

printf("按数学成绩排序:

\n");

mathcompositor(stu);

printf("按语文成绩排序:

\n");

Chinesecompositor(stu);

printf("按英语成绩排序:

\n");

Englishcompositor(stu);

printf("按平均分排序:

\n");

Averagecompositor(stu);

}

}

}

}

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2