资源描述:
《2012年C语言课程设计实习报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、C语言课程设计实习报告班级:学生姓名:序号:21指导老师:陈老师/刘老师日期:2012.2目录一、程序分析与设计1二、流程图1三、源程序清单3四、调试过程8五、程序有待改进的地方9六、本次实习的收获和建议9附录9C语言课程设计实习报告一、程序分析与设计(标题四号宋体加黑,正文五号宋体,行间距-固定值18,首行缩进2字符)1、先用记事本编辑文件cj.txt存储一个班学习成绩。然后在C环境下,建立一个学生信息的结构体,用r方式打开上述文件,再用fscanf读入、用printf在屏幕上显示文件内容。2、利用循环使每个学生的三门功课的成绩相加,然后再把和除以三就得到了平均
2、成绩。接着用冒泡法利用平均分的高低排出名次。最后用fprintf将每个学生的信息写入到mc.txt文件。3、利用for语句下的printf语句把每个同学的信息在屏幕上显示出来。每名同学之间用分割线分开,作为每个学生的成绩条。4、利用for语句配合if嵌套语句计算出每科每个分数段的学生人数。在for语句中计算出每科的全班总成绩,再把总分除以三十七算出每科的平均分。最后用printf语句把结果按格式输出。5、利用for语句和if、printf语句配合找出不及格的学生的序号及该科成绩。6、利用for语句和if语句配合再利用逻辑或和逻辑且找出优等生的信息,并用printf
3、语句在屏幕上显示出来。7、把以上几点分别定义五个函数,再定义一个菜单函数,利用switch语句和goto配合,完成输入进行运行。二、流程图1计算平均分并排名fori=0to37stu[i].total=stu[i].math+stu[i].engl+stu[i].physstu[i].ave=stu[i].total/3.0打印出各个学生的每门课的成绩,平均分fori=0to37forj=0to37stu[j].ave>stu[i].ave真假stu[i].mc++打印出各个学生的每门课的成绩,平均分,名次9C语言课程设计实习报告2求个分数段的人数fori=0to
4、i<37stu[i].math<60真假math_60++stu[i].math<=69真假math60_69++stu[i].math<=79真假math70_79++stu[i].math<=89真假math80_89++math_90++同理求出英语和物理在这个分数段的人数打印出不及格人的序号,不及格科目,分数3不及格人数fori=0toi<37stu[i].math<60stu[i].engl<60stu[i].phys<60真假真假真假输出输出输出stu[i].id,stu[i].id,stu[i].id,"数学","英语","物理",stu[i].ma
5、thstu[i].englstu[i].phys4优秀人数fori=0toi<37(stu[i].ave>90
6、
7、stu[i].ave>85&&((stu[i].math==100
8、
9、stu[i].engl==100
10、
11、stu[i].phys==100)
12、
13、(stu[i].math>95&&stu[i].engl>95
14、
15、stu[i].math>95&&stu[i].phys>95
16、
17、stu[i].engl>95&&stu[i].phys>95)))&&(stu[i].mc>=1&&stu[i].mc<=3)&&(stu[i].math>60&&stu[i].en
18、gl>60&&stu[i].phys>60)真假输出stu[i].id,stu[i].name,stu[i].math,stu[i].engl,stu[i].phys,stu[i].total,stu[i].ave,stu[i].mc9C语言课程设计实习报告三、源程序清单(此部分采用小五号宋体,行间距-固定值14)#include#includestructstudent{intid;charname[9];intmath;intengl;intphys;inttotal;floatave;intmc;}stu[37];str
19、uctstudent*p=&stu[0];//-----------------mc--------------------------voidmc(){inti;printf("读取文件结果如下:");printf("%8s%8s%8s%8s%8s","序号","姓名","数学","英语","物理");for(i=0;i<37;i++){printf("%8d%8s%8d%8d%8d",p[i].id,p[i].name,p[i].math,p[i].engl,p[i].phys);}for(i=0;i<37;i++){p[i].total=p[i]
20、.math