下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、n=31C 程序设计实验报告实验名称:结构程序设计学时安排:2 课时实验类别:上机操作型实验要求:1 人 1 组一、实验目的1.掌握结构变量的基本使用方法;2.掌握结构数组的基本使用方法;3.掌握结构的简单嵌套应用;4.掌握结构指针的概念,以及结构指针作为函数参数的编程方法。二、实验设备介绍软件需求:Visual C+ 6.0或CFree3.5以上版本硬件需求:对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能 支持24位真彩色的显示卡、彩色显示器、打印机。三、实验内容1.定义一个关于年、月、日的
2、结构,并编写函数计算某日是该年中的第几天?要求用结构指针作为函数参数,注意闰年问题。以下部分程序供参考,可自行改动:struct date/*日期结构体:包含年月曰*/int year;int mon th;int day;void dayofyear(struct date *pday);int main( void)struct date temp,*pday;pday=& temp;/*请添加*/2运行结果示例如下:In put year、month and day: 2006 3 5642.改正程序error09_2.cpp中的错误。建立一个有n ( 3到10之间)个学生成绩的
3、结构记录, 包括学号、姓名和3门成绩,输出总分最高的学生姓名和总分。输入输出结果如下所示:1 zha ng 78 83 752 wang 76 80 773 she n 92 88 78总分最高的学生是:shen, 258分要求把正确的代码(按规范缩进)写入报告,并以注释的方式说明错误原因。 注释示例如下:int i;/*循环控制变量不能定义为double类型*/3.编写一程序,计算两个时刻之间的时间差,并将其值返回。时间以时、分、秒表示,假 设两个时刻的差小于24小时。(此题选做)提示:先输入两个时间,然后比较两个时间的大小,用大的减去小的。时间相减从秒开始, 如果负数则需位,再减分,最后减
4、小时。四、程序清单第一题#i ncludeint main()int result;struct riqiint year;int mon th;int day;date;printf(Input year、month and day:);scan f(%d%d%d,&date.year,&date.mo nth,&date.day);int day_of_year(i nt year,i nt mon th,i nt day); result=day_of_year(date.year,date.m onth,date.day); prin tf(%dn,result
5、);return 0;int day_of_year(i nt year,i nt mon th,i nt day)int k,leap,yearday;inttab213=0,31,28,31,30,31,30,31,31,30,31,30,0,31,29,31,30,31,30 ,31,31,30,31,30;leap=(year%4=0&year%100!=0)|year%400=0; yearday=0;3for(k=1;k mon th;k+)yearday=yearday+tableapk; yearday=yearday+day;retur n yearday;第二题#i
6、nclude int main (void)struct studentint number;char name20;int score3;int sum;struct student student20;/*定义记录20个学生信息的结构数组*/int i, j, k, n, max=0;printf(输入n:);scanf(%d,&n);for (i = 0; i n; i+)printf(输入第d个学生的学号、姓名和3门成绩:,i+1);/*输入第i+1个学生*/studenti.sum=0;/*将成绩和初始化*/scanf(%d%s, &studenti.number,
7、&);for(j = 0; j 3; j+)scanf(%d, &studenti.scorej);studenti.sum += studenti.scorej;max = student0.sum;for(i = 0; i n; i+)if(max studenti.sum)max = studenti.sum;k = i;printf(总 分 最 高 的 学 生 是: %s,%d分n, , studentk.sum);return 0;第三题#include struct timeint hour;int minute;
8、4int second;5;void mai n()struct time time1,time2;int timestart,timee nd,hours, minu tes,secon ds; printf(输入起始时刻:);scan f(%d:%d:%d,&time1.hour, &time1.mi nute, &time1.seco nd); printf(输入结束时刻:);scan f(%d:%d:%d,&time2.hour, &time2.mi nute, &time2.seco nd);timestart=time1.hour*3
9、600+time1.mi nute*60+time1.seco nd; timeend=time2.hour*3600+time2.mi nute*60+time2.seco nd; hours=(timeend-timestart)/3600;mi nu tes=(timee nd-timestart-3600*hours)/60;seco nds=timee nd-timestart-3600*hours-60*mi nu tes;printf(两时刻相差:%d小时谕4秒n,hours,minutes,seconds); return 0;五、运行结果第一题Input year month and3 564Press any key to continue.第二题第三题l|:12:35:56Jl:15:4?:12:3小时1加6秒keu to continue 六、头验心得写结构的程序题时,注意结构定义以及结构名。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 桥梁工程总承包合同协议
- 城市绿化带广告牌安装施工合同
- 盐城市设计创意中心租赁合同
- 购物中心休息区地砖铺装协议
- 乡村旅游鱼塘施工合同范本
- 酒店租赁合同协议:电竞比赛专用
- 环境监测系统施工合同
- 物流配送招投标合同承诺书
- 城市商业街箱涵施工协议
- 建筑电气工程皮卡租赁合同
- 神经外科疼痛护理查房
- 专门学校情况报告
- 工业互联网平台构建
- 数学思想与方法-国家开放大学电大机考网考题目答案
- 杭州奥泰生物技术股份有限公司IVD研发中心建设项目环境影响报告表
- 公共卫生事业管理专业职业生涯规划书
- GB/T 43232-2023紧固件轴向应力超声测量方法
- 低压配电室的安全操作规程
- 新目标汉语口语课本2课件-第2单元
- 二手车买卖合同(标准版范本)
- 国有企业合规制度培训
评论
0/150
提交评论