C语言程序设计基础课程设计报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c程序课程设计报告”。
程序设计基础课程设计报告
课程名称: 课程设计题目: 程序设计基础课程设计 学生信息管理系统
姓
名:
系: 专
业: 年
级: 学
号: 指导教师: 职
称:
计算机科学技术系 计算机网络技术
讲师
2012年1月1日
一、设计题目及要求。
1、题目:学生信息管理系统
2、要求:
1)建立学生信息的结构体
2)学生信息的初始化(可以从文件获取)3)学生信息的添加、修改、查找 4)学生信息的输出 5)对学生信息按学号排序 6)计算一门课的平均分和总分 7)将学生信息保存为文件
二、设计算法设计分析。
1、主要功能模块:添加模块、查找模块、修改模块、排序模块 添加模块:
(1)从键盘中输入添加学生的人数n.(2)从键盘中输入学生的学号和各科成绩,分别存入一维数组sum和二维数组score中。
(3)计算各科的总分和平均分,分别存入一维数组sum和aver中。
(4)判断各个学生的三科成绩是否都大于90,如果是则输出“Y”,表示该生能获得奖学金,否则输出“N”表示该生不能获得奖学金。
添加模块结果图
查找模块
(1)从键盘中输入要查找的学生的学号k..(2)编写程序使num[i]与k一一对比,直到num[i]==k,输出该生的学号及相应成绩。
查找模块结果图
修改模块:
(1)从键盘中输入要修改的学生的学号x..(2)编写程序使num[i]==x,输出该生的成绩,选择你要修改的科目并输入你修改后的新分数,重新计算该生的总分和平均分。
(3)重新判断该生的三门课成绩是否都大于
90,如果是则输出“Y”,表示该生能获得奖学金,否则输出“N”表示该生不能获得奖学金。
修改模块的结果图
三、程序编码实现。源代码与执行结果2部分
/*函数功能:添加一个或几个学生的成绩,查找某个学生的成绩,修改某个学生的成绩
函数参数:长整型数组num,存储每个学生的学号
整型数组score,存储每个学生的成绩
整型数组sum,存储每个学生的总分
实型数组aver,存储每个学生的平均分
字符型数组c,标志每个学生能否获得奖学金
整型数n,存储学生总数 函数返回值:无 */
void Find(long num[],int score[][3],int sum[],float aver[],char c[],int n){ long x,t,k;int i,j;
printf(“请选择您要实现的功能:1-添加,2-查找,3-修改n”);scanf(“%ld”,&t);if(t==1){ printf(“请输入你要添加的人数:”);scanf(“%d”,&A);printf(“Enter No and Score as: MT EN PHn”);for(i=n;i=90)&&(score[i][1]>=90)&&(score[i][2]>=90)){ c[i]='Y';} else { c[i]='N';} } } if(t==2){ printf(“请输入学号:”);scanf(“%ld”,&k);for(i=0;i
printf(“学号t数学t英语t物理t总分t平均成绩t>90n”);
printf(“%4ldt”,num[i]);
for(j=0;j
printf(“%5dt%6.1ftt%cn”,sum[i],aver[i],c[i]);} } } if(t==3){
printf(“请输入学号:”);scanf(“%ld”,&x);for(i=0;i
printf(“请输入你要修改的选项所对应的数字:0-MT,1-EN,2-PHn”);
scanf(“%d”,&j);
printf(“你将修改为:”);
scanf(“%d”,&score[i][j]);
sum[i]=0;
for(j=0;j
{
sum[i]=sum[i]+score[i][j];
}
aver[i]=(float)sum[i]/3;
if((score[i][0]>=90)&&(score[i][1]>=90)&&(score[i][2]>=90))
{
c[i]='Y';
}
else
{
c[i]='N';
} } } } } /*函数功能:按学号对学生排序
函数参数:长整型数组num,存储每个学生的学号
整型数组score,存储每个学生的成绩
整型数组sum,存储每个学生的总分
实型数组aver,存储每个学生的平均分
字符型数组c,标志每个学生能否获得奖学金
整型数n,存储学生总数 函数返回值:无 */ void order(long num[],int score[][3],int sum[],float aver[],char c[],int n){ int i,j,t,x;long k;float g;char h;for(i=0;ii;t--){ if(num[t]
x=score[i][j];
score[i][j]=score[t][j];
score[t][j]=x;} } }
执行结果(1):
(2)
四、程序调试过程中出现的问题:
开始运用添加功能时,虽然添加了,但在输出结果中不显示。
解决办法:将最后的输出中的i
五、总结
在课程设计的这段日子里,我真正体会到什么叫失败是成功之母,因为在编写程序时会出现这样或那样的错误,有的是语法错误,有的是逻辑错误,还有的是由于自己粗心漏掉或多加了一些符号等等,但只要你能静下心来慢慢寻找原因,慢慢修改,最后终能成功。但如果你在编程时格外细心,你将会减少许多麻烦,同时也会节省很多时间。
汇编语言程序设计课程设计指导书一、课程设计的目的本课程设计是《汇编语言程序设计》课程的后继教学环节,其宗旨是使学生通过对一个较大型的、综合性的应用程序进行阅读、修......
《c语言程序设计基础》重修试卷一、选择题(2’*20=40’)1、c程序由构成。A.函数B.命令C.程序D.表达式2、以下选项中合法的变量名是A.#y2B.a 3、设有说明:int x;float y;double z;则......
总第3课时备课第 3课时课题:E语言程序设计基础教学内容:青岛版八年级下册信息技术第 13页至第 17 页一、教学分析【教学内容分】 本课是在第1课学习用E语言程序解决高斯问题的......
C语言程序设计课程设计任务书项目4:高校工资管理系统一、课程设计项目:高校工资管理系统二、目的与要求:1、目的:(1)要求学生达到熟练掌握C++语言的基本知识和技能; (2)基本掌握面向......
课程设计指导书课程名称: C语言程序设计 班次: 自动化2016-01,02,03班 设计任务:整个课程设计一共提供了10个题目,编号为1~10。按学号尾数进行选题设计。 课程设计目的1、进一......