欢迎来到天天文库
浏览记录
ID:22801523
大小:114.00 KB
页数:11页
时间:2018-10-31
《c++函数编程20道习题汇总含其详细程序解答》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、
2、第1题:编写两个函数,函数功能分别是:求两个整数的最大公约数和最小公倍数,要求输入输出均在主函数中完成。样例输入:1525样例输出:575
3、#includeintgys(inta,intb){inti;for(i=a;i>0;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;
4、cin>>a>>b;c=gys(a,b);d=gbs(a,b);cout<5、第2题:编写函数factors(num,k),函数功能是:求整数num中包含因子k的个数,如果没有该因子则返回0,例如:32=2×2×2×2×2,则factors(32,2)=5。要求输入输出均在主函数中完成。样例输入:4 2样例输出:2样例输入:8 3样例输出:06、#includeintfactors(intnum,intk){intn=0,a;a=num%k;while7、(a==0){n++;num=num/k;a=num%k;}returnn;}intmain(){intnum,k,b;cin>>num>>k;b=factors(num,k);cout<8、第3题:编写函数,函数功能是:计算n的阶乘,要求输入输出均在主函数中完成。样例输入:5样例输出:120、9、#includeintjc(intn){inta,b=1;for(a=1;a<=n;a++)b=a*b;returnb;}intmain(){intn,s;c10、in>>n;s=jc(n);cout<11、第4题:编写函数,函数功能是:计算k以内(包括k)最大的10个(不足10个则是所有的)能被13或17整除的自然数之和。要求输入输出均在主函数中完成。样例输入:500样例输出:462212、#includeintsum(intk){intn,c=0,s=0;for(n=k;n>0;n--){if(n%13==013、14、n%17==0){c++;s+=n;}if(c>=10)break;}returns;}intmain(){intk15、,s;cin>>k;s=sum(k);cout<16、17、第5题:编写函数,函数功能是:根据下列公式求π的值(直到某一项的值小于给定精度e为止),精度e由键盘输入,要求输入输出均在主函数中完成。样例输入:0.0005样例输出:3.1405818、#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(a19、eturnp;}intmain(){doublee,p;cin>>e;p=pai(e);cout<20、第6题:编写程序求 要求使用函数,函数功能是:求某个数的阶乘。n由键盘输入,输入输出均在主函数中完成。注意:0!=1。样例输入:3样例输出:1021、#includeintjc(inta){ints=1,i;if(a==0)s=1;else{for(i=1;i<=a;i++)s=s*i;}returns;}intmain(){intn,k,s;double22、sum=0;cin>>n;for(k=0;k<=n;k++){s=jc(k);sum+=s;}cout<23、第7题:求数列要求使用函数计算该序列的前N项和SN,直到SN大于q为止,q由键盘输入,输入输出均在主函数中完成。样例输入:50样例输出:50.4167、24、#includefloatsum(floatq){floats=0,a,n;for(n=1;s<=q;n++){a=(n+1.0)/n;s+=a;}returns;}intmain(){fl25、oatq,s;cin>>q;s=sum(q);cout<26、第8题:求数列的前n项和 要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:50样例输出:1.9607927、#includefloatmyx(intn){floata;inti,s=0;for(i=1;i<=n;i++)s+=i;a
5、第2题:编写函数factors(num,k),函数功能是:求整数num中包含因子k的个数,如果没有该因子则返回0,例如:32=2×2×2×2×2,则factors(32,2)=5。要求输入输出均在主函数中完成。样例输入:4 2样例输出:2样例输入:8 3样例输出:0
6、#includeintfactors(intnum,intk){intn=0,a;a=num%k;while
7、(a==0){n++;num=num/k;a=num%k;}returnn;}intmain(){intnum,k,b;cin>>num>>k;b=factors(num,k);cout<
8、第3题:编写函数,函数功能是:计算n的阶乘,要求输入输出均在主函数中完成。样例输入:5样例输出:120、
9、#includeintjc(intn){inta,b=1;for(a=1;a<=n;a++)b=a*b;returnb;}intmain(){intn,s;c
10、in>>n;s=jc(n);cout<
11、第4题:编写函数,函数功能是:计算k以内(包括k)最大的10个(不足10个则是所有的)能被13或17整除的自然数之和。要求输入输出均在主函数中完成。样例输入:500样例输出:4622
12、#includeintsum(intk){intn,c=0,s=0;for(n=k;n>0;n--){if(n%13==0
13、
14、n%17==0){c++;s+=n;}if(c>=10)break;}returns;}intmain(){intk
15、,s;cin>>k;s=sum(k);cout<
16、
17、第5题:编写函数,函数功能是:根据下列公式求π的值(直到某一项的值小于给定精度e为止),精度e由键盘输入,要求输入输出均在主函数中完成。样例输入:0.0005样例输出:3.14058
18、#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(a19、eturnp;}intmain(){doublee,p;cin>>e;p=pai(e);cout<20、第6题:编写程序求 要求使用函数,函数功能是:求某个数的阶乘。n由键盘输入,输入输出均在主函数中完成。注意:0!=1。样例输入:3样例输出:1021、#includeintjc(inta){ints=1,i;if(a==0)s=1;else{for(i=1;i<=a;i++)s=s*i;}returns;}intmain(){intn,k,s;double22、sum=0;cin>>n;for(k=0;k<=n;k++){s=jc(k);sum+=s;}cout<23、第7题:求数列要求使用函数计算该序列的前N项和SN,直到SN大于q为止,q由键盘输入,输入输出均在主函数中完成。样例输入:50样例输出:50.4167、24、#includefloatsum(floatq){floats=0,a,n;for(n=1;s<=q;n++){a=(n+1.0)/n;s+=a;}returns;}intmain(){fl25、oatq,s;cin>>q;s=sum(q);cout<26、第8题:求数列的前n项和 要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:50样例输出:1.9607927、#includefloatmyx(intn){floata;inti,s=0;for(i=1;i<=n;i++)s+=i;a
19、eturnp;}intmain(){doublee,p;cin>>e;p=pai(e);cout<
20、第6题:编写程序求 要求使用函数,函数功能是:求某个数的阶乘。n由键盘输入,输入输出均在主函数中完成。注意:0!=1。样例输入:3样例输出:10
21、#includeintjc(inta){ints=1,i;if(a==0)s=1;else{for(i=1;i<=a;i++)s=s*i;}returns;}intmain(){intn,k,s;double
22、sum=0;cin>>n;for(k=0;k<=n;k++){s=jc(k);sum+=s;}cout<23、第7题:求数列要求使用函数计算该序列的前N项和SN,直到SN大于q为止,q由键盘输入,输入输出均在主函数中完成。样例输入:50样例输出:50.4167、24、#includefloatsum(floatq){floats=0,a,n;for(n=1;s<=q;n++){a=(n+1.0)/n;s+=a;}returns;}intmain(){fl25、oatq,s;cin>>q;s=sum(q);cout<26、第8题:求数列的前n项和 要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:50样例输出:1.9607927、#includefloatmyx(intn){floata;inti,s=0;for(i=1;i<=n;i++)s+=i;a
23、第7题:求数列要求使用函数计算该序列的前N项和SN,直到SN大于q为止,q由键盘输入,输入输出均在主函数中完成。样例输入:50样例输出:50.4167、
24、#includefloatsum(floatq){floats=0,a,n;for(n=1;s<=q;n++){a=(n+1.0)/n;s+=a;}returns;}intmain(){fl
25、oatq,s;cin>>q;s=sum(q);cout<
26、第8题:求数列的前n项和 要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:50样例输出:1.96079
27、#includefloatmyx(intn){floata;inti,s=0;for(i=1;i<=n;i++)s+=i;a
此文档下载收益归作者所有