收藏 分销(赏)

C++实验6及参考答案.doc

上传人:精*** 文档编号:3107299 上传时间:2024-06-18 格式:DOC 页数:6 大小:59.50KB
下载 相关 举报
C++实验6及参考答案.doc_第1页
第1页 / 共6页
C++实验6及参考答案.doc_第2页
第2页 / 共6页
C++实验6及参考答案.doc_第3页
第3页 / 共6页
C++实验6及参考答案.doc_第4页
第4页 / 共6页
C++实验6及参考答案.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、上海电力学院实验报告课程名称 高级程序设计c+(1) 实验项目 实验6 函数(2) 姓名 学号 班级 专业 信息安全 同组人姓名 无 指导教师姓名 田秀霞 实验日期 2015年12月2日 一、实验目的1、掌握重载函数的使用,函数的默认参数。2. 掌握函数递归。二、实验内容和步骤编程序并上机调试运行。1、编写重载函数Max1可以分别求取两个整数,三个整数,两个双精度数,三个双精度数的最大值l 程序源代码(注意添加注释)l #includel using namespace std;ll int Max1(int x,int y);l int Max1(int x,int y,int z);l d

2、ouble Max1(double x,double y);l double Max1(double x,double y,double z);ll int main()l l int x=2,y=3,z=4;l double m=3.2,n=1.4,p=3.9;l coutx,y中最大的值是:Max1(x,y)endl;l coutx,y,z中最大的值是:Max1(x,y,z)endl;l coutm,n中最大的值是:Max1(m,n)endl;l coutm,n,p中最大的值是:Max1(m,n,p)=y?x:y;l l int Max1(int x,int y,int z)l l int

3、 max;l max=xy?x:y;l max=zmax?z:max;l return max;l ll double Max1(double x,double y)l l return x=y?x:y;l l double Max1(double x,double y,double z)l l double max;l max=xy?x:y;l max=zmax?z:max;l return max;l l 运行结果(直接截取结果图)2、编写函数,求x的y次方, 如果用户没有给出y的值,则默认输出x.(提示: 用默认参数值实现). 运行调试程序,熟悉调试窗口,熟悉单步调试和断点调试的过程.l

4、 程序源代码(注意添加注释)l #includel using namespace std;l double powxy(double x,int y=1);l int main()l l double x;l int y;l char choose;l coutx;l coutchoose;l if(choose=y)l l couty;l coutx的y次方为:powxy(x,y);l l elsel coutx的次方为:powxy(x);l return 0;l l double powxy(double x,int y)l l double s=1;l for(int i=1;i=y;

5、i+)l s*=x;l return s;l ll 运行结果(直接截取结果图)3、求两个正整数m和n(由用户输入)之间的非素数之和(包括m和n).要求用函数实现, l 程序源代码(注意添加注释)l #includel using namespace std;l bool f(int i);l int summn(int m,int n);l int main()l l int m,n;l cout请输入两个整数mn;l if(mn) int t; t=m;m=n;n=t;l coutsummn(m,n);l return 0;l l int summn(int m,int n)l l int

6、i,s=0;l for(i=n;i=m;i+)l l if(!f(i) s=s+i;l l return s;l ll bool f(int i)l int j;l for(j=2;ji;j+)l if(i%j=0) return false;l return true;l l 运行结果(直接截取结果图)4. 在主程序中提示输入整数n,编写函数用递归的方法求1+2+.+n的值。l 程序源代码(注意添加注释)l #includel using namespace std;l int sum1ton(int n);l int main()l l int n;l coutn;l cout从到n,累加

7、和为:sum1ton(n);l return 0;l l int sum1ton(int n)l l if(n=1) return 1;l else return sum1ton(n-1)+n;l ll 运行结果(直接截取结果图)5. 用递归的方法编写函数求n阶勒让德多项式的值,在主程序中实现输入、输出。递归公式为:l 程序源代码(注意添加注释)l #includel using namespace std;l double p(int n,double x);l int main()l l int n;l double x;l coutn;l if(n0) l l cout错误:n必须为大于

8、的整数,程序将结束!; l return;/main函数结束运行l l coutx;l coutp(n,x)=p(n,x);l return 0;l l double p(int n,double x)l l if(n=0) return 1;l else if(n=1) return x;l else return (2*n-1)*x*p(n-1,x)-(n-1)*p(n-2,x)/n;l ll 运行结果(直接截取结果图)6. 打印1!+2!+3!+10!之和。要求用函数实现。l 程序源代码(注意添加注释)l #includel using namespace std;l long sumj

9、c(int n);l long jc(int n);l int main()l l coutsumjc(10);l return 0;l l long sumjc(int n)l l if(n=1) return jc(n);l else return jc(n)+sumjc(n-1);l l long jc(int n)l l if(n=1|n=0) return 1;l else return n*jc(n-1);l ll 运行结果(直接截取结果图)三、实验中遇到的问题以及解决方法四、实验结论与体会1、 结合上课内容,写出程序,并调试程序,要给出测试数据和实验结果。2、 添加适当注释,注意书写的层次结构。3、 整理上机步骤,总结经验和体会。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服