ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:65.48KB ,
资源ID:6103781      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6103781.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C++函数编程20道习题汇总含其详细程序解答DOC.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C++函数编程20道习题汇总含其详细程序解答DOC.docx

1、C+函数编程20道习题汇总含其详细程序解答DOC第1题:编写两个函数,函数功能分别是:求两个整数的最大公约数和最小公倍数,要求输入输出均在主函数中完成。样例输入:1525样例输出:575#includeintgys(inta,intb)inti;for(i=a;i0;i-)if(a%i=0&b%i=0)returni;break;intgbs(inta,intb)inti;for(i=a;i+)if(i%a=0&i%b=0)returni;break;intmain()inta,b,c,d;cinab;c=gys(a,b);d=gbs(a,b);coutcd;return0;第2题:编写函数f

2、actors(num,k),函数功能是:求整数num中包含因子k的个数,如果没有该因子则返回0,例如:32=22222,则factors(32,2)=5。要求输入输出均在主函数中完成。样例输入:4?2样例输出:2样例输入:8?3样例输出:0#includeintfactors(intnum,intk)intn=0,a;a=num%k;while(a=0)n+;num=num/k;a=num%k;returnn;intmain()intnum,k,b;cinnumk;b=factors(num,k);coutbendl;return0;第3题:编写函数,函数功能是:计算n的阶乘,要求输入输出均在

3、主函数中完成。样例输入:5样例输出:120、#includeintjc(intn)inta,b=1;for(a=1;an;s=jc(n);couts;return0;第4题:编写函数,函数功能是:计算k以内(包括k)最大的10个(不足10个则是所有的)能被13或17整除的自然数之和。要求输入输出均在主函数中完成。样例输入:500样例输出:4622#includeintsum(intk)intn,c=0,s=0;for(n=k;n0;n-)if(n%13=0|n%17=0)c+;s+=n;if(c=10)break;returns;intmain()intk,s;cink;s=sum(k);co

4、utsendl;return0;第5题:编写函数,函数功能是:根据下列公式求的值(直到某一项的值小于给定精度e为止),精度e由键盘输入,要求输入输出均在主函数中完成。样例输入:0.0005样例输出:3.14058#includedoublepai(doublee)doubles,a,k,p;s=1;a=1/3.0;for(k=2;k+)s+=a;a=a*(k/(k*2+1);if(ae;p=pai(e);coutpendl;return0;第6题:编写程序求?要求使用函数,函数功能是:求某个数的阶乘。n由键盘输入,输入输出均在主函数中完成。注意:0!=1。样例输入:3样例输出:10#inclu

5、deintjc(inta)ints=1,i;if(a=0)s=1;elsefor(i=1;in;for(k=0;k=n;k+)s=jc(k);sum+=s;coutsumendl;return0;第7题:求数列要求使用函数计算该序列的前N项和SN,直到SN大于q为止,q由键盘输入,输入输出均在主函数中完成。样例输入:50样例输出:50.4167、#includefloatsum(floatq)floats=0,a,n;for(n=1;sq;s=sum(q);coutsendl;return0;第8题:求数列的前n项和要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均

6、在主函数中完成。样例输入:50样例输出:1.96079#includefloatmyx(intn)floata;inti,s=0;for(i=1;in;for(i=1;i=n;i+)s+=myx(i);coutsendl;return0;第9题:编写函数fun(num),其中num是一个n位数,函数功能是:求整数num的后n-1位,如果num是一位数则返回0,要求输入输出均在主函数中完成。样例输入:9样例输出:0样例输入:6734样例输出:734样例输入:1000样例输出:0样例输入:10101样例输出:101#include#includeintjw(intx)inta,n,m;if(xx;

7、c=jw(x);coutcendl;return0;第10题:编写函数,函数功能是:判断输入的字符是否为数字字符。如果是,则输出YES,否则输出NO,要求输入输出均在主函数中完成。样例输入:5样例输出:YES样例输入:B样例输出:NO#includeusingnamespacestd;intpdsz(charn)intflag;if(n=0&n=9)flag=1;elseflag=0;returnflag;intmain()charn;n=getchar();if(pdsz(n)=1)coutyes;elsecoutno;return0;第11题:编写函数,函数功能是:将两个两位数的正整数a、

8、b合并成一个整数c,合并规则是将a的十位和个位分别放在c的千位和个位,将b的十位和个位分别放在c的百位和十位。a、b由键盘输入,输入输出均在主函数中完成。样例输入:4512样例输出:4125#include#includeinthb(inta,intb)intq,g,m,c;q=a/10;g=a%10;m=b*10;c=q*1000+m+g;returnc;intmain()inta,b,c;cinab;c=hb(a,b);coutcendl;return0;第12题:求数列的前n项和?要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:10

9、样例输出:0.382179#include#includedoubledx(doublen)doublea,b,c;a=pow(-1,n+1);b=n*(n+1);c=a/b;returnc;intmain()doublen,s=0,i,a;cinn;for(i=1;i=n;i+)a=dx(i);s+=a;coutsendl;return0;第13题:求数列的前n项和?要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:3样例输出:123#include#includeintan(intn)ints=0,m,a,i;for(i=1;in;fo

10、r(i=1;i=n;i+)a=an(i);sum+=a;coutsumendl;return0;第14题:求满足的n的最大值,要求使用函数,函数功能是:计算n的立方,k由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:10000样例输出:13#include#includeintlf(intx)inta;a=x*x*x;returna;intmain()intk,s=0,i,n=0,a;cink;for(i=1;sk;i+)a=lf(i);s+=a;n=i-2;coutnendl;return0;第15题:求数列?直到相邻两项之差的绝对值小于1E-6为止。要求使用函数,函数功能是:计算

11、数列的每一项,x由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:0.21样例输出:1.1#include#includefloatsn(floatx,floatn)floats=1,i,a=1,b=1,m;for(i=1;ix;for(k=1;k+)n+;p=sn(x,n);q=sn(x,n+1);if(fabs(q-p)1E-6)break;coutpendl;return0;第16题:利用级数展开式计算cosx?直到某一项的绝对值小于0.00001为止。要求使用函数,函数功能是:计算数列的每一项,x由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:0样例输出:1样例输入:

12、3样例输出:-0.989992#include#includedoublean(doublex,doublen)doublea,b,k,c=1,d,e;a=pow(-1,n);b=pow(x,2*n);for(k=1;kx;for(i=1;i+)p=an(x,i);s+=p;if(fabs(p)0.00001)break;coutsendl;return0;第17题:利用级数展开式计算sinx?直到某一项的绝对值小于0.00001为止。要求使用函数,函数功能是:计算数列的每一项,x由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:0样例输出:0样例输入:3样例输出:0.14112#in

13、clude#includedoublean(doublex,doublen)doublef,a,b,i,c=1,d;a=pow(-1,n+1);b=pow(x,2*n-1);for(i=1;ix;for(i=1;i+)p=an(x,i);s=s+p;if(fabs(p)0.00001)break;coutsendl;return0;第18题:编写程序求Fibonacci数列的前n项阶乘之和,即。要求使用函数,函数功能是:求某个数的阶乘。n由键盘输入,输入输出均在主函数中完成。注意:#include#includeintjc(intx)inta=1,k;for(k=1;kn;a=1;b=1;s=

14、2;for(i=3;i=n;i+)j=a+b;k=jc(j);s+=k;a=b;b=j;coutsendl;return0;样例输入:6样例输出:40450第19题:求数列其中分母为n以内(包括n)的素数。要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:50样例输出:1.66165#include#includefloatan(intn)floata,b=0,c,d;inti;a=0;for(i=1;in;for(i=1;i=n;i+)a=an(i);s+=a;coutsendl;return0;第20题:编写程序求m和n之间(包括m和n

15、,m=n)所有素数的平方根之和。要求使用函数,函数功能是:判断某一个数是否为素数。m和n由键盘输入,要求输入输出均在主函数中完成。样例输入:100999?样例输出:3157.48#include#includeintpd(intn)inti,m=0,flag=0;for(i=1;imn;for(k=m;k=n;k+)b=pd(k);if(b)s=s+sqrt(k);coutsendl;return0;第21题:编写函数digit(num,k),函数功能是:求整数num从左边开始的第k位数字的值,如果num位数不足k位则返回0。要求输入输出均在主函数中完成。样例输入:46473样例输出:4样例输

16、入:235237样例输出:0#include#includeintdigit(intx,intk)intn,s,a,b;n=int(log10(x)+1;if(nnumk;t=digit(num,k);couttendl;return0;第1题:编写函数,将字符串中的大写字母变成对应的小写字母,小写字母变成对应的大写字母,其它字符不变。在主函数中调用该函数,完成任意字符串的转换,并输出结果。输入字符串(允许包含空格),输出处理后的结果。样例输入:HowAreYou?样例输出:hOWaREyOU?#includeusingnamespacestd;#includevoidexc(chara,in

17、tl)inti;for(i=0;i=A&ai=a&ai=z)ai=ai-32;elseai=ai;intmain()chara50;intl;gets(a);l=strlen(a);exc(a,l);puts(a);return0;第2题:编写函数,形成n阶杨辉三角形。在主函数中调用该函数,形成杨辉三角形,并输出结果。输入阶数n,输出处理后的结果。样例输入:5样例输出:111121133114641#include#includevoidyh(inta50,intl)inti,j,k;for(k=0;kl;k+)ak0=1;akk=1;for(i=2;il;i+)for(j=1;jn;yh(a

18、,n);for(j=0;jn;j+)for(i=0;i=j;i+)coutaji;coutendl;return0;第3题:编写函数,求一个字符串的长度。在主函数中调用该函数,输出结果。输入字符串(允许包含空格),输出字符串的长度。样例输入:HowAreYou?样例输出:12#includeusingnamespacestd;#includeintlen(chara)intl;l=strlen(a);returnl;intmain()chara50;intl;gets(a);l=len(a);coutlendl;return0;第4题:编写函数,将字符数组s2中的前n个字符复制到字符数组s1中

19、,不允许使用strcpy函数。在主函数中调用该函数,完成任意字符串的复制,并输出结果。输入分2行,第一行为字符串(不包含空格),第二行为n的值,输出处理后的结果。样例输入:Hello,world!8样例输出:Hello,wo#includevoidcp(chara,charb,intn)inti;for(i=0;ian;cp(a,b,n);coutbendl;return0;第5题:编写函数,函数功能是:统计整数n的各位上出现数字1、2、3的次数。要求输入输出均在主函数中完成。样例输入:123114350样例输出:312#includeusingnamespacestd;#includevoi

20、dcs(chara,intb,intl)inti;b0=0;b1=0;b2=0;for(i=0;il;i+)if(ai=1)b0+;elseif(ai=2)b1+;elseif(ai=3)b2+;elsecontinue;intmain()chara50;intb50,l;gets(a);l=strlen(a);cs(a,b,l);coutb0b1b2endl;return0;第6题:编写程序完成进制转换,要求使用函数,函数功能是:十进制转换为二进制,输入输出均在主函数中完成。样例输入:125样例输出:1111101#includeintzh(inta,intx)inti=-1;while(x

21、!=0)i+;ai=x%2;x=x/2;returni;intmain()inta32,m,n,k;cinm;n=zh(a,m);for(k=n;k=0;k-)coutak;return0;第7题:编写两个函数,将n个正整数中的素数按升序排序。函数功能分别是:判断一个数是否为素数,以及对数组进行排序。输入分2行:第一行为n的值,第二行为n个整数。要求输入输出均在主函数中完成。样例输入:9987654321样例输出:2357#includeintorder(inta,intb,intl)inti,m,j,k=0,q,w;for(i=0;il;i+)m=0;for(j=1;j=ai;j+)if(ai%j=0)m+;if(m=2)bk=ai;k+;for(i=0;ik-1;i+)q=i;for(j=i+1;jbj)q=j;if(q!=i)w=bq;bq=bi,bi=w;returnk;intmain()inta40,b40,n,l,q;cinn;for(l=0;lal;q=order(a,b,n);for(l=0;lq;l+)coutbl;return0;第8题:编写函数,功能是交换数组中的最大数和最小数的位置,并计算所有数之和。例如数组a有5个元素3、

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1