c语言课程设计学生成绩管理系统Word文档下载推荐.docx

上传人:b****6 文档编号:18537507 上传时间:2022-12-19 格式:DOCX 页数:11 大小:50.69KB
下载 相关 举报
c语言课程设计学生成绩管理系统Word文档下载推荐.docx_第1页
第1页 / 共11页
c语言课程设计学生成绩管理系统Word文档下载推荐.docx_第2页
第2页 / 共11页
c语言课程设计学生成绩管理系统Word文档下载推荐.docx_第3页
第3页 / 共11页
c语言课程设计学生成绩管理系统Word文档下载推荐.docx_第4页
第4页 / 共11页
c语言课程设计学生成绩管理系统Word文档下载推荐.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

c语言课程设计学生成绩管理系统Word文档下载推荐.docx

《c语言课程设计学生成绩管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《c语言课程设计学生成绩管理系统Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。

c语言课程设计学生成绩管理系统Word文档下载推荐.docx

(1)主菜单

学生成绩管理系统

1、成绩录入

2、成绩查询

3、成绩统计 

4、退  出

(2)各菜单项功能

1成绩录入:

输入学生的学号、姓名及三门课的成绩;

2成绩查询:

按学号查询学生记录。

3绩统计:

计算学生的平均分;

OK

根据学生的平均分高低,对学生的数据进行排序后输出;

4退出系统:

退出整个系统(即主菜单)。

三.课程设计的基本要求

设计步骤的规范不但可以培养学生科学的工作方法和作风,而且还能有效地减少错误,提高工作效率。

因此必须严格执行良好的实验步骤规范(包括上级操作规范)。

本课程设计的基本步骤与要求是:

1、问题分析及解决方案框架确定

充分地分析和理解问题本身,弄清要求做什么。

在确定解决方案框架过程中,考虑怎样使程序结构清晰、合理、简单和易于调试,并确定每个函数的简单功能,以及函数之间的调用关系。

2、详细设计和编码

确定算法的主要流程,再此基础上进行代码设计(Coding),每个明确的功能模块程序一般不超过60行,否则要进一步划分。

3、上机前编写程序与检查

上机前程序检查可有效提高调试效率,减少上机调试程序时的无谓错误。

程序检查主要有两种途径:

用一组测试数据手工执行程序;

通过阅读或给别人讲解自己的程序而深入全面地理解程序逻辑。

把程序中的明显错误事先排除。

4、上机调试程序

5、完成课程设计报告

四.数据结构设计描述

五.各变量的定义和作用

intnum;

/*定义学号,变量为整型*/

charname;

/*定义姓名,变量为字符型*/

intscore;

/*定义课程的成绩,变量为整型*/

floataverage;

/*定义平均分,变量为浮点型*/

六.系统各函数的功能、相互调用关系

1.函数实现功能说明:

(1)、menu函数

是定义一个菜单函数,其功能在于输出菜单界面供使用者选择。

(2)、input函数

是定义用于输入学生信息。

(3)、select函数

是定义义用于查询学生信息。

包括学号、姓名及各科成绩。

(4)、statistics函数

计算学生的平均分。

根据学生的平均分高低,对学生的数据进行排序后输出。

2.相互调用关系:

Main函数调用menu函数。

Menu函数可以调用input函数、select函数和statistics函数

七.N-S流程图

(一)、用梯形法求定积分流程图:

输入a,b,n;

h=(b-a)/n

f0=a*a+2.0*a+1.0

fori=0ton

a=a+h

f1=a*a+2.0*a+1.0

s=(f0+f1)*h/2.0+s

f0=f1

输出s

(二)、学生成绩管理系统的NS流程图:

1、输入函数:

fori=0toN

输入学号、姓名

forj=0toM

输入3门成绩分数

输入完毕!

按任意键返回主菜单

例如输入:

1王908075;

2李808560;

3赵657590

2、查询函数:

输入要查询学生号码

输出学生学号

输出学生姓名

fori=0toM

显示该学生的3门课程成绩

3、统计函数:

Forj=0toN

Fori=0toM

temp=temp+stu[j].score[i]

stu[j].average=temp/N

求平均成绩并输出

排序(冒泡法)

输出学生平均成绩前三名

4、菜单函数:

输出“学生成绩管理系统”及功能菜单

1

2

3

4

清屏并调用“输入函数”

清屏并调用“查询函数”

清屏并调用“统计函数”

退出系统

5、主函数:

清屏并调用“菜单函数”

八.课程设计过程中遇到的问题及解决过程

1、For(i=0;

i>

n;

i++)经常写成For(i=0,i>

n,i++),导致运行错误。

解决方法:

编程时候需要仔细和耐心。

2、对菜单切换的方法不了解,编写的程序运行时候是一竖行向下排列,很影响使用者的视觉范围,通过搜索一些相关资料得知system("

cls"

)的作用。

3、对一些知识的不熟悉,导致刚开始编程的时候很难下手。

解决方法:

重新掌握不熟悉的知识并收集相关资料。

九.心得与体会:

一周的课程设计很快结束了,一开始拿起题目时什么都不懂,真不知道从何下手到后来觉得它很有趣,很想去做并希望能把它做得更好。

刚开始错误实在太多,改错误真的很头疼,不过当经过一次又一次的调试后,终于弄好了,那时却是特别的高兴。

总的来说就是这次的课程让我学了不少东西,也让我对编程更有兴趣,虽然学的不是很好,不过以后会努力的。

十.源程序(请见附录)

附录1:

用梯形法求定积分(数值求解算法)

附录2:

十一.参考文献

C程序设计(第三版)

#include<

stdio.h>

main()

{

inti;

floats=0,h,f0,f1,a,b,n;

printf("

PlreasEntera,b,n:

"

);

scanf("

%f,%f,%f"

&

a,&

b,&

n);

h=(b-a)/n;

f0=a*a+2.0*a+1.0;

for(i=0;

i<

=n;

i++)

a=a+h;

f1=a*a+2.0*a+1.0;

s=(f0+f1)*h/2.0+s;

f0=f1;

}

%f\n"

s);

getch();

}

#include<

stdlib.h>

conio.h>

#defineN3/*学生人数*/

#defineM3/*课程门数*/

structstudent

{

/*学号*/

charname[20];

/*姓名*/

intscore[3];

/*三门课成绩*/

}stu[N];

/*学生数*/

voidinput();

voidselect();

/*查询*/

voidstatistics();

/*统计*/

voidmenu();

voidinput()

{

inti,j;

printf("

\t\t①成绩录入\n\n"

for(i=0;

N;

请输入学号:

scanf("

%d"

stu[i].num);

请输入姓名:

%s"

stu[i].name);

for(j=0;

j<

M;

j++)

第%d门成绩的分数为:

j+1);

stu[i].score[j]);

}

\n\n"

按任意键返回主菜单!

getch();

}

/*2.查询*/

voidselect(intno)

inti;

学生%d号:

\n"

no);

学号:

%d\n"

stu[no-1].num);

姓名:

%s\n"

stu[no-1].name);

i++)

第%d门课程的成绩为:

i+1);

stu[no-1].score[i]);

\n按任意键返回主菜单!

/*3.统计*/

voidstatistics()

floattemp=0;

inti=0;

intj=0;

/*学生成绩平均分*/

temp=0;

\t\t③成绩统计\n\n"

\n学生成绩平均分:

j++)

temp=temp+stu[j].score[i];

stu[j].average=temp/N;

\n学生%s的成绩平均成绩为:

stu[j].name);

%0.2f分"

stu[j].average);

/*排序(冒泡法)*/

N-j-1;

if(stu[i].average<

stu[i+1].average)

temp=stu[i].average;

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

stu[i+1].average=temp;

\n\n学生平均成绩前三名:

3;

\n第%d名:

i+1,stu[i].average);

\n\n按任意键返回主菜单!

voidmenu()

intnum=0;

intn=0;

\n\t\t\t学生成绩管理系统\n\n"

\t\t\t①成绩录入\n\t\t\t②成绩查询\n\t\t\t③成绩统计\n\t\t\t④退出系统\n"

\t\t\tchoose:

num);

switch(num)

case1:

system("

input();

break;

case2:

\t\t②成绩查询\n\n"

请输入要查询的学生号(1~3):

select(n);

case3:

statistics();

case4:

exit(0);

default:

;

voidmain()

while

(1)

/*清屏*/

menu();

用户名:

yghuhvu

密码:

1110904

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

当前位置:首页 > 解决方案 > 学习计划

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

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