华北科技学院计算机学院综合性实验报告PAGE
第 PAGE 7 页
华北科技学院计算机学院综合性实验
实 验 报 告
课程名称 程序设计语言(C) 实验学期 2012 至 2013 学年 第 二 学期学生所在学院 管理学院 年级 2012 专业班级 电商B122 学生姓名 高项培 学号 201204064229 任课教师 陈超 实验成绩
计算机学院制实验报告须知学生上交实验报告时,必须为打印稿(A4纸)。页面空间不够,可以顺延。学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、内容、结果及分析等。教师应该填写的内容包括:实验成绩、教师评价等。教师根据本课程的《综合性实验指导单》中实验内容的要求,评定学生的综合性实验成绩;要求在该课程期末考试前将实验报告交给任课教师。综合性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。未尽事宜,请参考该课程的实验大纲和教学大纲。《 程序设计语言(C)》课程综合性实验报告
开课实验室: 计算机基础实验室 2013 年 06 月 13 日实验题目基于数组和函数的成绩计算一、实验目的通过该实验把C语言中的几个主要知识(如:顺序结构、选择结构、循环结构、数组、函数等)得到综合应用。二、设备与环境硬件:多媒体计算机软件:Windows系列或DOS系列的操作系统、C语言三、实验内容1.设计主函数,在主函中应该有正确输入或调用每个学生的学号及各科成绩(输入可以根据不同的情况采用不同的输入方法)。要求:输入时有必要的提示信息。2.设计子函数,可以求每个学生的平均成绩,每门课的平均成绩、成绩的最大值、最小值等、并保存在数组中;要求:每个学生至少设计两个子函数。3.最后结果输出。要求:输出格式要界面直观、清晰大方、格式规范。四、实验结果及分析1、程序设计思路:1* 定义整型数组a (全局变量以便函数调用),盛放学号及各科成绩。2* 主函数里定义数组b , c 用来分别盛放各位同学和各科的平均成绩。 主函数里定义数组d ,e 用来分别盛放各科的最大和最小成绩。3* 定义指针变量p ,q ,m ,n并分别把b ,c, d ,e的首地址赋给他们以便调用。4* 定义 i 通过for循环输入学号,成绩并达到给整型数组a赋值(有提示信息)的结果。5* 定义swap 函数,调用 p ,q 地址,通过for 循环计算个人的总成绩和各科的总成绩并算出各人及各科的平均成绩。 定义maxmin 函数,调用 m ,n 地址,通过for 循环计算各科的最大和最小成绩。6* 最后通过主函数打印出个人和各科的成绩以及平均成绩、各科最大和最小成绩
2、程序功能结构图:
#includeint a[5][6];
void swap(float *p,float *q); void maxmin(float *m,float *n);float b[5],c[5],d[5],e[5]; float *p,*q,*m,*n;int i; p=b;q=c;m=d;n=e; printf("请输入5个同学的学号及各科成绩:\n");
i=0;i<5;i++
printf("第%d个学生信息:\n学号 高数 经济学 英语 线代 C语言\n",i+1);scanf("%d%d%d%d%d%d\n",&a[i][0],&a[i][1],&a[i][2],&a[i][3],&a[i][4],&a[i][5]);
yesnoyesno
swap(p,q);
maxmin(m,n)
void swap(float *p,float *q){int sum=0,j,i; for(i=0;i<5;i++){for(j=1;j<6;j++)sum+=a[i][j];*(p+i)=sum/5.0;sum=0;} for(j=1;j<6;j++){for(i=0;i<5;i++)sum+=a[i][j