



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.实验十 结构和链表程序设计班级: 学号: 姓名: 评分: 一【实验目的】1、掌握结构变量的基本使用方法。2、掌握结构数组的基本使用方法。3、掌握结构指针的概念以及结构指针作为函数参数的编程方法。4、掌握单向链表的概念和建立方法。5、掌握单向链表的基本操作6、进一步掌握C程序的调试方法和技巧。二【实验内容和步骤】1、程序调试题A目标:进一步学习掌握程序调试的方法和技巧。B内容:参照实验指导教材P95“9.改错题”,用递归函数计算xn的值。(注:程序文件保存在“调试示例”文件夹中,文件名为error10_1.cpp) 调试正确的源程序清单#include double fun(int n,dou
2、ble x);int main(void)int n;double x, root; printf(Enter x:);scanf(%lf,&x);printf(Enter n:);scanf(%d,&n);root=fun(n,x);printf(root=%0.2fn,root);return 0;double fun(int n,double x)if(n=1)return x;else return x*fun(n-1,x); 运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。2、完善程序,并调试运行程序题目(1)日期换算。程序功能:定义一个关于年、月、日的日期结构,并编写一个函数计
3、算某日期是该年中的第几天(注意闰年问题)。要求用结构体指针作为函数参数。在主函数中输入一个日期(年、月、日),调用函数计算并输出该日期是该年中的第几天。(注:程序文件保存在“第1题”文件夹中)打开proj1.cpp文件,在两条星线之间填入相应的代码,使程序完成该功能。 调试正确的源程序清单#include struct dateint year; /年int month; /月int day; /日;int main (void )int n;struct date d,*p;int ComputeDays(struct date *p);printf(Please Input a date:
4、 );scanf(%d%d%d, &d.year,&d.month,&d.day); /输入一个日期p=&d; /指针p指向日期变量d/请在两条星线之间填入相应的代码, 调用ComputeDays(struct date *p)函数计算。/*/n=ComputeDays(p);/*/printf(%d-%d-%d is the %d days.n,d.year,d.month,d.day,n);return 0;int ComputeDays(struct date *p)int i,num=0,flag; /num作为计算天数的累计和变量,flag作为是否闰年的标记。int tab213=0
5、, 31, 28, 31, 30,31,30,31,31,30,31, 30,31,0, 31, 29, 31, 30,31,30,31,31,30,31, 30,31;if(p-year%4=0 & p-year%100!=0) | (p-year%400=0)flag=1; /判定闰年else flag=0;/请在两条星线之间填入相应的代码, 计算某日期是该年中的第几天(注意闰年问题)。/*/for(i=1;imonth;i+)num=num+tabflagi;num=num+p-day;/*/return num; 运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。题目(2)计算时间差
6、期。程序功能:定义一个关于时、分、秒的时间结构,并编写一个函数计算两个时刻的时间差(注:两个时刻的时间差小于24小时)。要求用结构体指针作为函数参数。在主函数中输入两个时刻(时、分、秒),调用函数计算并输出两个时刻的时间差。(注:程序文件保存在“第2题”文件夹中)打开proj2.cpp文件,在两条星线之间填入相应的代码,使程序完成该功能。 调试正确的源程序清单#include struct timeint hour; int minute; int second; ;int main (void )struct time t,t1,t2,*p,*q;struct time TimeDiff(s
7、truct time *p,struct time *q);printf(Please Input the First time: );scanf(%d%d%d, &t1.hour,&t1.minute,&t1.second); /输入第一个时间printf(Please Input the second time: );scanf(%d%d%d, &t2.hour,&t2.minute,&t2.second); /输入第二个日期p=&t1;q=&t2; /指针p、q分别指向日期变量d1、d2/请在两条星线之间填入相应的代码, 调用TimeDiff(struct time *p,struct
8、time *q)函数计算。/*/t=TimeDiff(p,q);/*/printf(The difference between t1 and t2 is );printf(%d Hours %d minutes and %d seconds.n,t.hour,t.minute,t.second);return 0;struct time TimeDiff(struct time *p,struct time *q)struct time tt;int num1,num2,num; /num作为计算时间差的总秒数变量num1=p-hour*3600+p-minute*60+p-second;n
9、um2=q-hour*3600+q-minute*60+q-second;/请在两条星线之间填入相应的代码, 计算两个时刻的时间差。/*/num=num2-num1;tt.hour=num/3600;tt.minute=(num-tt.hour*3600)/60;tt.second=num-tt.hour*3600-tt.minute*60;/*/return tt; 运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。题目(3)成绩处理。程序功能:定义一个关于学生成绩单的结构(包含:学号、姓名、语文、数学、计算机和平均成绩),编写4个对应的函数,分别完成以下几项计算和统计汇总工作:(1) 计
10、算每一个学生的平均成绩。(2) 计算每门课程的平均成绩。(3) 输出平均成绩最高的学生的记录。(4) 按平均成绩从高到低输出学生的成绩单(学号、姓名、数学、英语、计算机和平均成绩)。要求用结构体指针作为函数参数。在主函数中输入5个学生的学号、姓名和数学、英语、计算机三门课程的成绩数据,分别调用不同的函数完成以上4项工作。(注:程序文件保存在“第3题”文件夹中)打开proj3.cpp文件,在两条星线之间填入相应的代码,使程序完成该功能。 调试正确的源程序清单 运行结果:(提示:通过屏幕截图,贴粘程序运行界面)。题目(4)链表拼接。程序功能:有两个单向链表,头指针分别为list1、list2,链表中每一结点包含姓名、工资基本信息,编写一个函数,把两个链表拼组成一个链表,并返回拼组后的新链表。要求用结构体指针作为函数参数。在主函数中建立
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海视觉艺术学院《事业启航》2023-2024学年第一学期期末试卷
- 泰山科技学院《市场营销学B》2023-2024学年第二学期期末试卷
- 天津市宝坻区普通高中2025届高三下期末质量调研(一模)英语试题含解析
- 辽宁省沈阳市四校协作体2025年高三5月阶段性教学质量检测试题语文试题理含解析
- 2021-2022学年甘肃省白银市高二上学期期末语文试题
- 江西省南昌市重点高中2025年高三第二次月考试卷含解析
- 那曲地区聂荣县2024-2025学年六年级下学期小升初数学试卷含解析
- 喀什理工职业技术学院《桥梁施工技术A》2023-2024学年第一学期期末试卷
- 2025年网络营销师职业资格考试试卷及答案
- 2025年医疗卫生执业考试试卷及答案
- 给幼儿园讲医疗知识
- 2024年共青团入团考试题库及答案
- 2024年《BIM技术介绍》课件
- 核心素养视域下小学道德与法治生活化教学策略探究
- 花键计算公式DIN5480
- 人教版八年级下《生命.生态.安全》教案
- 有理数的加减混合运算教学设计 人教版
- 中职学生心理健康教育专题讲座
- 2024年湖南衡阳八中直选生综合能力测试物理试题打印版
- 江苏省南京市秦淮区2023-2024学年八年级下学期历史期末测试卷
- 2024年甘肃省中考语文试题卷(含答案)
评论
0/150
提交评论