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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

编程题c.docx

1、编程题c 编程题1(2) 键盘输入10个实型数,求其倒数的和并输出.参考答案#include stdio.h#include math.hmain()int i;float a,sum=0;printf(Please input 10 number:);for(i=0;i10;i+)scanf(%f,&a);sum += 1.0/a;printf(The result is:%fn,sum);2(3) 键盘输入10个正实型数,求其方根的和并输出。参考答案#include stdio.h#include math.hmain()int i;float a,sum=0;printf(Please

2、input 10 number which are all great than 0:);for(i=0;i10;i+)scanf(%f,&a);if(a 0)continue;sum += sqrt(a);printf(The result is:%fn,sum);3(4) 计算 s=1-2!+3!-4!+-10!的值并输出。参考答案#include stdio.h#include math.hmain()int i;long sum=0,b=-1;for(i=1; i=10; i+)b = -1*i*b;sum += b;printf(The result is:%fn,sum);4(5)

3、 编写一个程序,从键盘输入一个三位整数,将它们逆序输出。例如输入127,输出721。参考答案#include stdio.hmain()int num,a,b,c;printf(Please input the number:);scanf(%d,&num);a=num/100;b=(num-100*a)/10;c=num-100*a-10*b;a += b*10+c*100;printf(The result is%dn,a);5(7) 打印出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如:153是一水仙花数,因为153=13+53+33.参考答案ma

4、in()int i,j,k,s;for(s=100;s=999;s+)i=s/100;j=s/10-10;k=s-i*100-j*10;if(i*i*i+j*j*j+k*k*k=s)printf(s=%dn,s);else continue;6(8)编写一程序,对于给定的一个百分制成绩,输出相应的五分制成绩。设:90分以上为A,8089分为B,7079分为C,6069分为D,60分以下为E。参考答案#includestdio.hmain()int a,b;printf(Please input the score:);scanf(%d,&a);b=a/10;switch(b)case 10:

5、case 9: printf(A!n);break;case 8: printf(B!n);break;case 7: printf(C!n);break;case 6: printf(D!n);break;default: printf(E!n);break;7(9) 计算 s=1-1/3 + 1/5- 1/7+1/101 的值并输出。参考答案main()int i,f=1;float sum=0.0;for(i=1;i0) printf(%d,n%10);n=n/10;9(21)在主函数中输入8个整数,调用函数对其进行排序(从小到大),排序方法不限,最后在主函数中输出结果。参考答案#inc

6、lude stdio.hvoid main() int num8,i;void taxis(int p, int);printf(Input 8 integers:n);for(i=0;i8;i+)scanf(%d,num+i);taxis(num,8);printf(The result:n);for(i=0;i8;i+)printf(%d,numi);void taxis(int p,int n)int i,j;int code,temp;for(i=0;in-1;i+)code=i;for(j=i+1;jn;j+)if(pjpcode)code=j;if(code!=i)temp=pi;

7、pi=pcode;pcode=temp;10(41) 从键盘输入十个整数,用合并排序法对输入的数据按照从小到大的顺序进行排序,将排序后的结果输出。 参考答案 #define N 16 #include stdio.h merge(a,b,c,m) /* 数组合并函数:将长度为m的*/ int a,b,c,m; /* 数组a、b合并到c */ int i=0,j=0,k=0; while(im&jbj) ck+=bj+; /* 将ai、*bj中的小 */else ck+=ai+; /* 者存入ck */while(im) ck+=ai+; /* 将a或b中剩余的数 */while(jm) ck+

8、=bj+; /* 存入c */mergesort(w,n) /* 数组排序函数: 对长度为n */int w,n; /* 的数组w排序 */ int i,t,raN; for(i=1;i2) /* 递归调用结束条件 */ mergesort (w,n/2); /* 将数组w一分为二,递归调 */mergesort (w+n/2,n/2); /* 用mergesort */merge( w,w+n/2,ra,n/2 ); /* 将排序后的两数组重新合并 */for(i=0;i*(w+1) t=*w; *w=*(w+1); *(w+1)=t; else printf(Error:size of a

9、rray is not a power of 2/n);main( ) int i;static int keyN=4,3,1,81,45,8,0,4,-9,26,7,4,2,9,1,-1;mergesort(key,N);for(i=0;i0) ak=n%2;turn(n/2,a,k-1);else return;main() int i,n,a16=0;printf(nPlease enter n:);scanf(%d,&n);turn(n,a,15);for(i=0;i16;i+)printf(%d,ai);12(45) 编写函数,采用递归方法在屏幕上显示如下杨辉三角形: 1 1 1 1

10、 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 参考答案#include main( ) int i,j,n=13;printf(N=);while( n12 )scanf(%d, &n); /* 最大输入值不能大于12 */for(i=0;i=n;i+) /* 控制输出N行 */ for(j=0;j12-i;j+)printf( ); /* 控制输出第i行前面的空格 */for(j=1;ji+2;j+)printf(%6d, c(i,j); /* 输出第i行的第j个值 */printf(n); int c(x,y) /* 求杨辉三角形中第x行第y列的值 */int

11、x, y; int z;if(y=1)|(y=x+1)return(1); /* 若为x行的第1或第x+1列,则输出1 */else /* 否则;其值为前一行中第y-1列与第y列值之和 */z = c(x-1,y-1) + c(x-1,y); return(z);13(54) 编制一个计算函数y=f(x)的值程序,其中:14(70) 任意输入一个偶数,请将它分解为两个素数之和。参考答案main( ) int j,k,n,m;printf(Please enter n:);scanf(%d,&n);for(j=2;jn;j+) /* 穷举法分解n为两个素数j和m之和 */ for(k=2;k=j

12、) /* j是素数 */ m=n-j;for(k=2;k=m) /* m也是素数,输出结果 */ printf(%4d = %4d + %4dn,n,j,m);break;15(90) 编写程序,输入三角型的三条边长,求其面积。注意:对于不合理的边长输入要输出数据错误的提示信息。参考答案#include math.hmain() int flag=0;float a,b,c,s;do printf(Please enter a b c:);scanf(%f%f%f,&a,&b,&c);if(ab+c | ba+c | ca+b)flag=1;while(flag);s=(a+b+c)/2;pr

13、intf(S=%f,s=sqrt(s-a)*(s-b)*(s-c);16(95) 输入n值,输出如图所示矩形。*n=6时的矩形参考答案分析:打印此图形用两重循环实现。图形要重复n行,故采用循环结构实现循环n次,循环体内部打印一行*号,把上述思路表示为:for(i=1;i=n;i+)打印一行*号;每行有n个*号,再采用循环结构实现n次循环,循环内部用格式输出语句打印一个*号,即:for(j=1;j=n;j+)printf(*);按照上述思路,实现打印矩形。参考答案:main() int i,j,n;printf(nPlease Enter n:);scanf(%d,&n);for(i=1;i=n

14、;i+) for(j=1;j=n;j+)printf(*);printf(n); 17(96) 输入n值,输出如图所示平行四边形。* * * * * *n=6时的平行四边形参考答案分析:此题和上题的区别在于每行*的数量逐行减少,可以使用上题控制空格个数的思路来控制*号的个数,请注意每行*的个数都是奇数。参考答案:main( ) int i,j,n;printf(nPlease Enter n:);scanf(%d,&n);for(i=1;i=n;i+) for(j=1;j=n-i;j+)printf( );for(j=1;j=2*i-1;j+)printf(*);printf(n);18(97

15、) 输入n值,输出如图所示高为n的等腰三角形。*n=6时的等腰三角形参考答案分析:此题图形是第3题图形的垂直反转,在编程上我们可以变换一个思路。对于图形中的第i行(1in),共需要输出2n-i个字符,其中前面的i-1个字符为空格,后面的字符为*号。按照这一思路可以编写出如下程序。参考答案:main( ) int i,j,n;printf(nPlease Enter n:);scanf(%d, &n);for( i=1;i=n;i+ ) /* 重复输出图形的n行 */ for( j=1;j=2*n-i;j+ ) /* 重复输出图形一行中的每个字符 */if(j=i-1) printf( ); /

16、* 输出前面的空格 */else printf(*); /* 输出后面的*号 */printf(n);19(108) 编程求 sum=1!+2!+3!+20!20(110) 编写程序,求S=1/(1*2)+1/(2*3)+1/(3*4)+前50项之和。参考答案#include stdio.h main()int i;float sum = 0;for(i=1;i=50;i+)sum += 1.0/(i*(i+1);printf(sum = %f n, sum);21(117) 统计在1030-25830之间有多少个数能同时被13和27整除。参考答案#include stdio.hmain()i

17、nt i, num = 0;for(i=1030;i=25830;i+)if(i%13=0) &(i%27= 0)num +; printf(num = %d n, num);22(121) 统计在30-15810之间有多少个数能被23整除,而不能被37整除。参考答案#include stdio.hmain()int i, num = 0;for(i=30;i=15810;i+)if(i%23=0) &(i%37!= 0)num +;printf(num = %d n, num);23(122) 统计在210-15870之间有多少个数能被19整除,而不能被21整除。参考答案#include s

18、tdio.hmain()int i, num = 0;for(i=210;i=15870;i+)if(i%19=0) &(i%21!= 0)num +; printf(num = %d n, num);24(133) 求一维整型数组中零的个数。要求:主函数定义数组a10 =-15,-22,13,44,-25, 66, 0, 88, -39,10,调用自定义函数求出零的个数,然后在主函数中输出结果。参考答案#includestdio.hmain()int a10=-15,-22,13,44,-25,66,0,88,-39,10,n;int num(int x10);n=num(a);printf

19、(The number is %dn,n);int num(int x10)int i,n=0;for(i=0;i=9;i+)if(xi=0)n+;return(n);25(137) 统计数组中小于数组元素平均值的元素的个数。要求:主函数定义一维整型数组a10 =12,34,56,78,90,9,87,65,43,21, 调用自定义函数统计小于数组元素平均值的元素的个数,并在主函数中输出结果 参考答案#includestdio.hmain()int a10=12,21,34,43,56,65,78,87,90,9,n;int num(int a10);n=num(a);printf(The number is %dn,n);int num(int a10)int i,n=0;float aver,sum=0;for(i=0;i=9;i+)sum+=ai;aver=sum/10;for(i=0;i=9;i+)if(aiAVER)n+;return(n);

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

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