已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验03函数的应用(2学时)(第3章 函数)一、实验目的(1) 掌握函数的定义和调用方法。(2) 练习重载函数的使用。(3) 练习使用系统函数。(4) 学习使用Visual Studio 2010的调试功能,使用“逐语句”追踪到函数内部。二、实验任务3_1(习题3-8)编写一个函数把华氏温度转换为摄氏温度,转换公式为:C=(F-32)*5/9。3_2 编写重载函数Max1可分别求取2个整数、3个整数、2个双精度数、3个双精度数的最大值。3_3 使用系统函数pow(x, y)计算xy的值,注意包含头文件cmath。3_4(习题3-13)用递归的方法编写函数求Fibonacci级数,观察递归调用的过程。三、实验步骤1.(编程,习题3-8)把华氏温度转换为摄氏温度。编写函数float Convert(float TempFer),参数和返回值都为float类型,实现算法C=(F-32)*5/9,在main()函数中实现输入、输出。程序名:lab3_1.cpp。 程序及运行结果:(注意:定义的函数头是float Convert(float TempFer))/lab3_1(习题3-8)#include using namespace std;float Convert(float TempFer);void main()float f;coutf;cout华氏温度f转换为摄氏温度的值是Convert(f)endl;float Convert(float TempFer)return (TempFer-32)*5/9;2.(编程)编写重载函数,求2或3个数中的最大数。编写4个同名函数Max1,分别求取2个整数、3个整数、2个双精度数、3个双精度数的最大值,实现函数重载,在main()函数中测试函数功能。程序名:lab3_2.cpp。 程序及运行结果:(注意:分别测试4个函数)/lab3_2.cpp#include using namespace std;int Max1(int a,int b)cout调用函数: int Max1(int a,int b)b?a:b;int Max1(int a,int b,int c) cout调用函数: int Max1(int a,int b,int c)b ? (ac?a:c) : (bc?b:c);double Max1(double a,double b) cout调用函数: double Max1(double a,double b)b?a:b; double Max1(double a,double b,double c) cout调用函数: double Max1(double a,double b,double c)b ? (ac?a:c) : (bc?b:c);void main()int a,b,c,ii;double d,e,f,dd;coutab; ii=Max1(a,b);couta和b的最大数是:iiendl;coutabc; ii=Max1(a,b,c);couta,b和c的最大数是:iiendl;coutde; dd=Max1(d,e);coutd和e的最大数是:ddendl;coutdef; dd=Max1(d,e,f);coutd,e和f的最大数是:ddb) return a;else return b;int Max1(int a,int b,int c) if(ab)if(ac) return a;else return c;elseif(bc) return b;else return c;方法3:int Max1(int a,int b)if(ba) a=b;return a;int Max1(int a,int b,int c) if(ba) a=b;if(ca) a=c;return a;3.(编程)调用系统函数pow(x, y)计算x的y次幂。在main()函数中提示输入两个整数x、y,使用cin语句得到x、y的值,调用pow(x, y)函数计算x的y次幂的结果,再显示出来。程序名:lab3_3.cpp。/*重载函数pow的函数原型:long double pow(long double,int);float pow(float,int);double pow(double,int);*/ 程序及运行结果:(注意:不要编写函数pow(),直接调用)/lab3_3.cpp#include #include /无此行也可以using namespace std;void main()float x; int y;coutx;couty;coutx的y次幂的结果为 pow(x,y)2;fib(1)=fib(2)=1;使用if语句判断函数的出口,在程序中用cout语句输出提示信息。程序名:lab3_4.cpp。(程序见步骤5) 程序的运行结果:(注意:运行步骤5的程序,输入6)5.(要求)用Debug调试的程序文件lab3_4.cpp。使用“调试”中的“逐语句”追踪到函数内部,观察函数的调用过程,参考程序如下:/lab3_4.cpp#include using namespace std;int fib(int n);int main()int n,answer;coutn;coutn;answer=fib(n);coutanswer 是第 n 个 Fibonacci 数。n;return 0;int fib(int n)cout计算 fib(n).;if(n3)cout返回 1!n;return (1);elsecout调用 fib(n-2) 和 fib(n-1);n;return (fib(n-2)+fib(n-1);6.(操作)调试步骤。调试操作步骤如下:(1) 选择菜单命令“调试 | 逐语句”,系统进入单步执行状态,程序开始运行,并出现一个DOS窗口,此时在源码中光标停在main()函数的入口处。(2) 把光标移到语句“answer=fib(n);”前,并在该行单击鼠标右键,再单击“运行到光标处”,在程序运行的DOS窗口中按提示输入数字6,光标停在语句“answer=fib(n);”前,观察一下n的值(观察方法见实验2)。(3) 单击“逐语句”,程序进入fib函数,观察一下n的值。(4) 把光标移到语句“return (fib(n-2)+fib(n-1);”前,单击“运行到光标处”。(5) 再单击“逐语句”,程序递归调用fib函数,再进入fib函数,观察一下n的值。(6) 继续执行程序,参照上述的方法,观察程序的执行顺序,加深对函数调用和递归调用的理解。把光标移到语句“return (fib(n-2)+fib(n-1);”前,单击Run to Cursor。再单击Step Into。(7)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 2075-2025切削加工用硬切削材料的分类和用途大组和用途小组的分类代号
- 2026年浙江大学医学院附属口腔医院公开招聘人员43人笔试考试参考题库及答案解析
- 2025广东省云浮市云安区“粤聚英才粤见未来”机关事业单位招聘紧缺人才2人华南农业大学专场考试笔试参考题库附答案解析
- 2025山东滨州国有资本投资运营集团有限公司招聘工作人员(第二批)10人笔试考试备考题库及答案解析
- 2025四川宜宾发展产城投资有限公司及其子公司第五批员工招聘6人考试笔试备考题库及答案解析
- 2025四川自贡汇东人力资源发展有限责任公司招聘人员8人笔试考试备考题库及答案解析
- 2026中国储备棉管理有限公司直属企业招聘2人笔试考试备考试题及答案解析
- 2025年广西桂林市面向全国高校招聘急需紧缺专业人才149人笔试考试参考试题及答案解析
- 2025江苏徐州市水利工程建设有限公司招聘考试笔试模拟试题及答案解析
- 2025湖北省长江光电产业创新发展有限公司社会招聘4人笔试考试参考题库及答案解析
- 城市居民委员会组织法(2025修订)解读课件
- 2025年江苏省公安厅遴选考试真题及答案
- 新护士岗前培训考试试题及答案
- 2025年(初级)工商管理考试试卷(含五套)含答案
- 2025年超星尔雅学习通《环境地理学》考试备考题库及答案解析
- 2025年呼和浩特铁路局集团招聘备考题库(406人)附答案
- 2025至2030中国多肽类药物行业项目调研及市场前景预测评估报告
- 心血管内科心梗急救培训要点
- 公家车安全行车培训课件
- 2025能源管理体系建设指导材料之22:9绩效评价-9.1能源绩效和能源管理体系的监视、测量、分析和评价(编制-2025A0)
- 柴油供货协议合同范本
评论
0/150
提交评论