内蒙古工业大学C语言实验报告.doc_第1页
内蒙古工业大学C语言实验报告.doc_第2页
内蒙古工业大学C语言实验报告.doc_第3页
内蒙古工业大学C语言实验报告.doc_第4页
内蒙古工业大学C语言实验报告.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

内蒙古工业大学信息工程学院实 验 报 告课程名称: 高级语言程序设计(C) 实验名称:循环、数组、函数和结构体程序设计实验类型: 验证性 综合性 设计性实验室名称: 校计算机中心机房 班级: 学号: 姓名: 组别: 同组人: 成绩: 实验日期: 实验报告撰写要求一、 实验前用预习报告纸撰写预习报告,预习报告包括以下内容1 实验目的2 实验用仪器设备、器材或软件环境3 实验原理、方案设计、程序框图、预编程序等4 实验过程中需要记录的实验数据表格二、 实验过程中,要认真观察,仔细记录三、 完成实验后用实验报告纸撰写实验报告,包括以下内容1 仪器设备型号及编号2 实验器材或软件环境3 实验步骤、程序调试方法4 实验数据处理及结果分析5 实验中存在的问题6 体会及思考题四、 报告撰写时,要求格式规范、书写整齐内蒙古工业大学信息工程学院预习报告成绩: 指导教师审核(签名): 年 月 日预习报告一、实 验 目 的:1.掌握结构体类型变量的定义和使用。2.掌握结构体类型变量的概念和使用。3.掌握联合体类型变量的定义和使用。4.掌握用指针访问结构体的方法。5.掌握利用结构体进行函数参数的传递。二、实 验 仪 器 设 备:台式电脑三、实 验 软 件 环 境:C+四、实 验 内 容: 有10个学生,每个学生的数据包括学号、姓名及3门课的成绩、总成绩和平均成绩,从键盘输入10个学生的数据(包括学号、姓名及3门课的成绩),要求打印出每位学生的学号、姓名、三门课的成绩、总成绩和平均成绩,最后再打印出3门课的总平均成绩以及最高分的学生的数据(包括姓名和总成绩)。要求: 1.根据学生信息定义一个结构体类型,再说明一个该结构体类型的数组。 2.用 input 函数从键盘上输入10个学生的数据。 3.用 average 函数求出每个学生总成绩、平均成绩和所有学生的总平均成绩。 4.用 maximum 函数找出最高分的学生的数据; 5.在主函数中输出每位学生的学号、姓名、3门课的成绩、总成绩和平均成绩以及总平均分和最高分学生的数据。 6.输出形式如下: NO. name score1 score2 score3 total average 101 wang 80 79 81 240 80.00 102 li 91 90 89 270 90.00 average=85.00 The highest score:li,score total:270五、实 验 设 计 思 路:构建一个包含学生信息的结构体,并用外部变量的方式定义一个结构体数组和一个float变量。然后定义完成相关功能的子函数和主函数main。最后利用input函数将每个学生的信息输入到程序中,利用average函数和maximum函数分别算出平均成绩、总分和找出成绩最高的学生,并利用主函数main将以上信息输出到屏幕上。六、程 序 框 图: main函数开 始定 义 变 量 i调 用 input 函 数调 用 average 函 数调 用 maximum 函 数输出学生信息结 束input 函数i=0iNYN输入学生学号和姓名i+j=0j3输入学生的成绩YNj+average函数total=0iNi=0计算总平均分NYj=0j3total+=si.scorej计算每个学生的平均分NYi+j+maximum函数i=1temp=s0itemp.totalYNi+七、预 编 程 序:#include#define N 10struct student int num; char name20; float score3;float total; float average;struct student temp1,stuN;float allaverage;void input()int i,j;for(i=0;iN;i+)scanf(%d%s,&stui.num,);for(j=0;j3;j+)scanf(%f,&stui.scorej);void average()int i,j;float total,aver,allaver;for(i=0;iN;i+) total=0.0;for(j=0;j3;j+)total+=stui.scorej;aver=total/3;stui.total=total;stui.average=aver; allaver=0.0; for(i=0;iN;i+)allaver+=stui.average;allaverage=allaver/N;void maximum()int i;temp1=stu0;for(i=1;iN;i+)if(temp1.totalstui.total) temp1=stui;main()int i;input();printf(nn);average();maximum();for(i=0;iN;i+)printf(num:%dn name:%sn score:%.2ft%.2ft%.2fn total:%.2fn average:%.2fnn,stui.num,,stui.score0,stui.score1,stui.score2,stui.total,stui.average); printf(all average:%.2fnn,allaverage); printf(highest:n num:%dn name:%sn score:%.2ft%.2ft%.2fn total:%.2fnaverage:%.2fn,temp1.num,,temp1.score0,temp1.score1,temp1.score2,temp1.total,temp1.average);八、实验数据表格:Nscore1score2score3totalaverage101Li90758224782.33102Sun88656822173.67103Huang90908826889.33104Yan85758024080.00105Wang60755919464.67106Zhao80586920769.00107He65726620367.67108Zhang68725519565.00109Liu52715217558.33110Du63775419464.67实验报告成绩: 指导教师审核(签名): 年 月 日实验报告一、 实 验 仪 器 设 备 及 编 号:台式电脑 (7B24)二、 实 验 软 件 环 境:C+三、实验内容:有10个学生,每个学生的数据包括学号、姓名及3门课的成绩、总成绩和平均成绩,从键盘输入10个学生的数据(包括学号、姓名及3门课的成绩),要求打印出每位学生的学号、姓名、三门课的成绩、总成绩和平均成绩,最后再打印出3门课的总平均成绩以及最高分的学生的数据(包括姓名和总成绩)。要求: 1.根据学生信息定义一个结构体类型,再说明一个该结构体类型的数组。 2.用 input 函数从键盘上输入10个学生的数据。 3.用 average 函数求出每个学生总成绩、平均成绩和所有学生的总平均成绩。 4.用 maximum 函数找出最高分的学生的数据; 5.在主函数中输出每位学生的学号、姓名、3门课的成绩、总成绩和平均成绩以及总平均分和最高分学生的数据。 6.输出形式如下: NO. name score1 score2 score3 total average 101 wang 80 79 81 240 80.00 102 li 91 90 89 270 90.00 average=85.00 The highest score:li,score total:270四、程序框图:main函数开 始定 义 变 量 i调 用 input 函 数调 用 average 函 数调 用 maximum 函 数输出学生信息结 束input函数i=0iNYN输入学生学号和姓名i+j=0j3输入学生的成绩YNj+average函数total=0iNi=0计算总平均分NYj=0j3total+=si.scorek计算每个学生的平均分NYi+j+maximum函数i=1temp=s0itemp.totalYNi+五、实验程序:#include#define N 10struct studentint num;char name20;float score3;float total;float average;struct student temp1,stuN;float allaverage;void input()int i,j;for(i=0;iN;i+)scanf(%d%s,&stui.num,);for(j=0;j3;j+)scanf(%f,&stui.scorej);void average()int i,j;float total,aver,allaver;for(i=0;iN;i+) total=0.0;for(j=0;j3;j+)total+=stui.scorej;aver=total/3;stui.total=total;stui.average=aver; allaver=0.0; for(i=0;iN;i+)allaver+=stui.average;allaverage=allaver/N;void maximum()int i;temp1=stu0;for(i=1;iN;i+)if(temp1.totalstui.total) temp1=stui;main()int i;input();printf(nn);average();maximum();printf(NO.tnametscore1tscore2tscore3ttotaltaveragen); for(i=0;iN;i+)printf(%-8d%-8s%-8.0f%-8.0f%-8.0f%-8.0f%-8.2fn,stui.num,,stui.score0,stui.score1,stui.score2,stui.total,stui.average);printf(average=%.2fn,allaverage);printf(The highest score:%s,score total:%.0fn,,temp1.total);五、实验数据处理及结果分析:六、实验中存在的问题:1.实验中,通过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论