C语言编程题及答案.doc
《C语言编程题及答案.doc》由会员分享,可在线阅读,更多相关《C语言编程题及答案.doc(16页珍藏版)》请在咨信网上搜索。
1、C语言编程题1(*)求分数序列:1/2,2/3,3/5,5/8,8/13,13/21. 前20项的和。 main() float i=1,j=2,t=0,s,n,m; for(n=1;n=0;i-) printf(%c,ci); 3(*)已知abc+cba=1333,其中a、b、c均为一位数,例如:617+716=1333, 518+815=1333,试编程求出符合这一规律的a、b、c,并输出结果。 main() int a,b,c,x,y; for(a=1;a=9;a+) for(b=0;b=9;b+) for(c=1;cc&a+cb&b+ca) printf(area=%f,area);
2、else1 printf(no); 5(*)编程求出1!+2!+3!+8!+9!+10!的值并输出。 程序1: main() int i,j; double p=1, sum=0; for(i=1;i=10;i+) for(j=1;j=i;j+) p=p*i; sum=sum+p;p=1.0; printf(sum=%f,sum); 程序2:float fac(n)int n;float f;if (n0) printf(n0,error!);else if(n=0|n=1) f=1;else f=fac(n-1)*n;return(f);main()int h,s=0,n; for(n=1;
3、n=4;n+) h=fac(n); s=s+h; printf(s=1!+2!+.+10!=%dn,s); 程序3: main() int i; double p=1, sum=0; for(i=1;i=10;i+) p=p*i; sum=sum+p; printf(sum=%f,sum); 2 6(*)从键盘输入两个整数,输出其和,差,积,商。7(*)输入若干个自然数,对奇数从大到小排序,对偶数从小到大排序,输出两种结果。 maxji(int a,int n) int i,j,k,t; for(i=0;in-1;i+)k=i;for(j=i+1;jn;j+) if(akaj) k=j; if
4、 (k!=i)t=ak;ak=aj;aj=t; #define N 10 main() int cN,i,j; for(i=0;i=0;i-) if(ci%2=0) printf(%5d,ci); printf(n); for(i=0;iN;i+) if(ci%2!=0) printf(%5d,ci); 8(*)求出0999之间的所有“水仙花数”并输出。“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如;153153 ,则153是一个“水仙花数”。程序1: main()int i,j,k,a;for(i=1;i=9;i+)for(j=0;j=9;j+)for(k=0;k=9;k
5、+)if(i*i*i+j*j*j+k*k*k=100*i+10*j+k)printf(%d%d%dn,i,j,k);程序:main()int m,i,j,k,a;for(m=101;i=999;m+) i=m/100; j=(m-m*100)/10;3 k=m%10;if(i*i*i+j*j*j+k*k*k=m)printf(%dn,m);9(*)试编程:判断输入的正整数是否既是5,又是7的整数倍数。若是则输出yes;否则输出no。10(*)已有函数调用语句c=add(a,b);请编写aad函数,计算两个实数a和b的和,并返回和值。11(*)有人想将手中一张面值100元的人民币换成5元、1元、
6、0.5元面值的零钱100张,以上三种面值的零钱至少有一张,问共有几种换法。请编程实现。程序1: main()int i,j,k,n=0;for(i=1;i19;i+)for(j=1;j95;j+)for(k=1;k94;k+)if(5*i+j+0.5*k=100&i+j+k=100)printf(%d,%d,%dn,i,j,k);n+;printf(%d,n);12(*)求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,例如:2+22+222+2222+22222 程序1:main()int i, a,n; long sum=0, b=1,c=1;scanf(%d,
7、%d,&a,&n);for(i=1;i=n;i+)程序3:main() long int sn=0,k=a;int a,i,j; scanf(%d,&a); for(i=1;i=5;i+) k=10*k+a; sn=sn+k; printf(%ldn,sn); sum+=a*c;b*=10;c+=b;printf(%ld,sum); 程序2:main() long int sn=0,k=0;int a,i,j; scanf(%d,&a); for(i=1;i=5;i+) for(j=1;j=i;j+) k=10*k+a;4 sn=sn+k; k=0; printf(%ldn,sn); 13(*
8、)编程输出如下图形(不能仅用printf语句): * * * * * * * * * * * * * * * * * * * * * * * *main()int i,k,j;for(i=0;i=4;i+) for(j=0;j4-i;j+) printf( ); for(k=0;k=2*i;k+) printf(*); printf(n); 14(*)用近似公式求自然对数的底e的值。 e1+1!+ + +#includemath.h main() float i,j,e,p=1.0,sum=0.0; for(i=1;i10 ;i+) for(j=1;j=i;j+) p=p*j; sum=sum
9、+1.0/p; p=1.0; e=i+sum; printf(%fn,e); 15(*)请编程,用scanf()函数输入三个字符,对这三个字符各加一个整数1后,用putchar()函数输出,且每输出一个字符换一行。16(*)请编程,用scanf()函数输入三个整数,输出其中不大不小的那个数,输出宽度为五位。 int findmid(int i,int j,int k)int n;5 if(ij) n=i;i=j;j=n;if(ik) n=j;else n=k;return(n); main()int i,j,k,n;scanf(%d%d%d,&i,&j,&k);n=findmid(i,j,k)
10、;printf(%dn,n);17(*)编程实现输出所有1100之间能被9整除余2的数。18(*)编写一程序实现如下功能:输入1、2、3、4、5、6、7(分别对应星期一至星期日)中的任何一个数,便能输出与之对应的英文名称。如输入1,则输出Monday。 main()char day;scanf(%c,&day);swith(day)case 1:printf( mondayn);break; case 2:printf(tuesdayn); break; case 3:printf(wednsdayn); break; case 4:printf(thursdayn); braek; case
11、 5:printf( fridayn); break; case 6:printf(saturdayn); break;case 7:printf(sundayn); break; defult: printf(errorn);19(*)编一程序,对于给定的一个百分制成绩,输出相应的5分制成绩。设:90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。(用switch语句实现)。 main()int s,score;scanf(%d,&score);s=score/10;switch(s)case 10:printf(An);break; case 9:printf(
12、An);break; case 8:printf(Bn);break; case 7:printf(Cn);break; case 6:printf(Dn);break; case 5: case 4: case 3: case 2: case 1:printf(En);break; default:printf(error); 20(*)试编程:判断输入的正整数是否既是5,又是7的整数倍数。若是则输出yes;否则输出no。21(*)一个数如果却好等于它的因子之和,这个数就称为“完数”。例如,6的因子为1、2、3,而6=1+2+3,因此6是“完数”。编程序找出100之内的所有完数,并按下列格式
13、输出其因子: 6 its factors are 1,2,3main()int m,i,s; for(m=2;m1000;m+) s=0; for(i=1; im ;i+) if(m%i=0) s=s+i; if (m=s) printf(%3d its factors are ,m); for(i=1;im;i+) if(m%i=0) printf(%4d,i); printf(n); 22(*)输入5对整数,请输出每对数中较大者 main()int i,j,a52;for(i=0;i=4;i+) for(j=0;j=1;j+) scanf(%d,&aij); for(i=0;iai0) p
14、rintf(%4dn,ai1); else printf(%4dn,ai0); 6 23(*)编程将一个3x3矩阵转置(行列互换)后输出。 main()int i,j, a33,b33;for(i=0;i=2;i+)for(j=0;j=2;j+)scanf(%d,&aij);for(i=0;i=2;i+)for(j=0;j=2;j+)print(“%5d”,aij);bji=aij; printf(n);for(j=0;j=2;j+)for(i=0;i=2;i+)printf(%5d,bij);printf(“n”);24(*)求一个一维数组的最大值,最小值和平均值(主函数调用并输出)。程序2
15、:main()void make(); int a10,i; extern int max,min; extern float aver; for(i=0;i10;i+) scanf(%d,&ai); make(a,10); printf(max=%d,min=%d,aver=%.2f,max,min,aver); int max,min; float aver; void make(int a,int n) int i; float sum;max=min=a0; sum=a0; for(i=1;in;i+) if(maxai) min=ai; sum+=ai;printf(%f,sum);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 编程 答案
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。