c函数编程20道习题汇总含其详细程序解答.doc

c函数编程20道习题汇总含其详细程序解答.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c函数编程20道习题汇总含其详细程序解答

第1题: 编写两个函数,函数功能分别是:求两个整数的最大公约数和最小公倍数,要求输入输出均在主函数中完成。 样例输入:15 25 样例输出:5 75 #include<iostream.h> int gys(int a,int b) {int i; for(i=a;i>0;i--) if (a%i==0&&b%i==0) { return i; break;} } int gbs(int a,int b) {int i; for(i=a;;i++) if(i%a==0&&i%b==0) { return i; break;} } int main() {int a,b,c,d; cin>>a>>b; c=gys(a,b); d=gbs(a,b); cout<<c<<' '<<d; return 0;} 第2题: 编写函数factors(num, k),函数功能是:求整数num中包含因子k的个数,如果没有该因子则返回0,例如:32=2×2×2×2×2,则factors(32,2)=5。要求输入输出均在主函数中完成。 样例输入:4?2 样例输出:2 样例输入:8?3 样例输出:0 #include<iostream.h> int factors(int num,int k) {int n=0,a; a=num%k; while(a==0) {n++; num=num/k; a=num%k; } return n;} int main() {int num,k,b; cin>>num>>k; b=factors(num,k); cout<<b<<endl; return 0; } 第3题: 编写函数,函数功能是:计算n的阶乘,要求输入输出均在主函数中完成。 样例输入:5 样例输出:120、 #include<iostream.h> int jc(int n) {int a,b=1; for(a=1;a<=n;a++) b=a*b; return b;} int main() {int n,s; cin>>n; s=jc(n); cout<<s; return 0; } 第4题: 编写函数,函数功能是:计算k以内(包括k)最大的10个(不足10个则是所有的)能被13或17整除的自然数之和。要求输入输出均在主函数中完成。 样例输入:500 样例输出:4622 #include<iostream.h> int sum(int k) { int n,c=0,s=0; for(n=k;n>0;n--) {if(n%13==0||n%17==0) {c++; s+=n;} if(c>=10) break;} return s;} int main() {int k,s; cin>>k; s=sum(k); cout<<s<<endl; return 0; } 第5题: 编写函数,函数功能是:根据下列公式求π的值(直到某一项的值小于给定精度e为止),精度e由键盘输入,要求输入输出均在主函数中完成。 样例输入:0.0005 样例输出:3.14058 #include<iostream.h> double pai(double e) {double s,a,k,p; s=1; a=1/3.0; for(k=2;;k++) {s+=a; a=a*(k/(k*2+1)); if(a<e) break;} p=s*2; return p;} int main() {double e,p; cin>>e; p=pai(e); cout<<p<<endl; return 0;} 第6题: 编写程序求? 要求使用函数,函数功能是:求某个数的阶乘。n由键盘输入,输入输出均在主函数中完成。注意:0!=1。 样例输入:3 样例输出:10 #include<iostream.h> int jc(int a) {int s=1,i; if(a==0) s=1; else {for(i=1;i<=a;i++) s=s*i;} return s;} int main() {int n,k,s; double sum=0; cin>>n; for(k=0;k<=n;k++) {s=jc(k); sum+=s;} cout<<sum<<endl; return 0;} 第7题: 求数列 要求使用函数计算该序列的前N项和SN,直到SN 大于q为止,q由键盘输入,输入输出均在主函数中完成。 样例输入:50 样例输出:50.4167、 #include<iostream.h> float sum(float q) {float s=0,a,n; for(n=1;s<=q;n++) {a=(n+1.

文档评论(0)

peili2018 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档