第四章课后编程题答案_第1页
第四章课后编程题答案_第2页
第四章课后编程题答案_第3页
第四章课后编程题答案_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、.第四章课后编程题答案/编写一个函数,计算直角坐标系中点a(x0,y0)到点b(x1,y1)的距离。#include #include float length(float x0,float y0,float x1,float y1)/求两点距离的子函数return sqrt(x0-x1)*(x0-x1)+(y0-y1)*(y0-y1);void main() float x0,x1,y0,y1;coutx0y0;coutx1y1;coutthe length from a to b is length(x0,y0,x1,y1)endl;/求a!+b!+c!的值,其中求n!要用一个函数实现,通

2、过主函数输入a、b和c的值,并在主函数中输出计算的结果。#include int factorial(int n)/求两点距离的子函数int sum=1;for (int i=1;i=n;i+)sum*=i;return sum;void main() int a,b,c;coutabc;couta!+b!+c!=factorial(a)+factorial(b)+factorial(c)endl;/编写一个函数。该函数读入一个整数,并判断这个整数是否为一个回文数字。例如4,44,434,4334,43534都是回文数字。#include bool palindrome(int n)/判断n是

3、否为回文的子函数int a20;int m=n;int i=0;int temp,num;while (m0)/将数字的各位反向放置在数组a中精品.ai=m%10;m=m/10;i+;temp=i/2;/需要比较的次数num=-i;/数字的最高位存储在anum中for (int j=0;jtemp;j+)if (aj!=anum-j) return false;/如果出现不相等的情况立即退出return true;/若比较的各个位置都相等,则为回文void main() int number;coutnumber;if (palindrome(number)coutnumber is a pa

4、lindrome.endl;elsecoutnumber is not a palindrome.endl;/编写一个程序,为选修3、4和5门课程的学生计算平均分,其中求平均分要用重载函数实现#include float average(float a,float b,float c)/求三门课程平均分子函数return (a+b+c)/3;float average(float a,float b,float c,float d)/求四门课程平均分子函数return (a+b+c+d)/4;float average(float a,float b,float c,float d,float

5、 e)/求五门课程平均分子函数return (a+b+c+d+e)/5;void main() int number;float s1,s2,s3,s4,s5;coutnumber;精品.if (number=3)couts1s2s3;coutthe average is average(s1,s2,s3)endl;else if (number=4)couts1s2s3s4;coutthe average is average(s1,s2,s3,s4)endl;elsecouts1s2s3s4s5;coutthe average is average(s1,s2,s3,s4,s5)endl;

6、/用递归方法将一个整数n转换成字符串。#include #include using namespace std;string convert(int n);string numstring();void main() int number;coutnumber;coutconverted string is ;coutconvert(number)endl;string convert(int n)/递归函数if (n/10=0)&(n=0) return ;elsenumstring=convert(n/10).append(string(1,(n%10+48);/将各位数转换为字符后创建

7、字符串,加到最后return numstring;精品./编写一个函数。该函数读入一个整数,然后将这个整数上每个位的数字按照相反的顺序输出。/例如输入的整数为12345,输出结果为54321。#include void reverse(int n)/反向显示整数nint a20;/存储n的各位,最多20位int m=n;int i=0;while (m0)/提取n的各位ai=m%10;m=m/10;i+;coutreversed number is ;for (int j=0;j=i-1;j+)/反向输出各位coutaj;coutendl;void main() int number;cout

8、number;reverse(number);/输入三个数字,数字可以为整形或浮点型,分别编写函数来求解三个数字的最大值、最小值和平均值,要求在主函数中完成数字的输入和计算结果的输出。#include #include float fmax,fmin,faverage;int max,min,average;void calculate(float fa,float fb,float fc)/浮点型处理函数fmax=fa=fb?fa:fb;fmax=fmax=fc?fmax:fc;fmin=fa=fb?fa:fb;fmin=fmin=b?a:b;max=max=c?max:c;min=a=b?a:b;min=min=c?min:c;average=(a+b+c)/3;void main() int s1,s2,s3;float f1,f2,f3;int type;couttype;while (type!=0)&(type!=1)/输入类型错误时再次输入couttype;coutf1f2f3;calculate(f1,f2,f3);coutsetw(8)maxsetw(8)minsetw(12)averageendl;coutsetw(8)fmaxsetw(8)fminsetw(12)fave

温馨提示

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

评论

0/150

提交评论