c语言编程题及答案.docx
- 文档编号:16289871
- 上传时间:2023-07-12
- 格式:DOCX
- 页数:23
- 大小:20.83KB
c语言编程题及答案.docx
《c语言编程题及答案.docx》由会员分享,可在线阅读,更多相关《c语言编程题及答案.docx(23页珍藏版)》请在冰点文库上搜索。
c语言编程题及答案
1、输入1,7,9,5,8,6,2,用冒泡法进行排序,按从小到大的顺序输出。
#include
main()
{
inta[7],i,j,t;
for(i=0;i<7;i++)
scanf("%d",&a[i]);
for(i=1;i<=7;i++)
{
for(j=0;j<=7-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for(i=0;i<7;i++)
printf("%d",a[i]);
printf("\n");
}
2、编程判断输入的字符串是否为“回文”。
所谓“回文”是指顺读和倒读都一样,如abcba。
#include
main()
{
chars[20],l,i,flag=0;
gets(s);
l=strlen(s);
for(i=0;i if(s[i]! =s[l-i-1]) flag=1; if(flag==0) printf("输入的字符串是回文\n"); else printf("输入的字符串不是回文\n"); } 3、输入5个数,求和并输出。 要求编写求和的函数。 #include voidmain() {intb(intx[],intn); intsum=0; inta[5]; inti; printf("请输入5个数: "); for(i=0;i<5;i++) scanf("%d",&a[i]); sum=b(a,5); printf("sum=%d\n",sum); } intb(intx[],intn) {inti,sum=0; for(i=0;i<5;i++) sum=sum+x[i]; returnsum; } 4、编写程序,求满足1*1+2*2+3*3+……n*n<=800的最大n是多少 #include"stdio.h" voidmain() { intn,s=0; for(n=1;s+n*n<=800;n++) s=s+n*n; printf("s=%d,n=%d\n",s,n-1); } 5、编程计算1*2*3+4*5*6+...+97*98*99的值。 #include main() { ints=0,i; for(i=1;i<100;i) { s=s+i*(i+1)*(i+2); i=i+3; } printf("%ld",s); } 6、从键盘输入n和a的值,计算a+aa+aaa+...+aa...a(n个a)的值。 #include"stdio.h" voidmain() { intn,a,i,t=0,s=0; scanf("%d%d",&n,&a); for(i=1;i<=n;i++) { t=t*10+a; s=s+t; } printf("a+aa+aaa+...+a(n个a)=%d",s); } 7、输出Fibonacci数列的前40项,要求按4列输出。 Fibonacci数列的特点: 前两个数为1,从第三数开始,每个数都是它前面两个数的和。 #include voidmain() { longa[40]; inti; a[0]=1; a[1]=1; printf("%10ld%10ld",a[0],a[1]); for(i=2;i<40;i++) { a[i]=a[i-1]+a[i-2]; printf("%10ld",a[i]); if(i%4==3) printf("\n"); } } 8、输入3个学生4门课的成绩{(60,70,65,75),(75,80,75,90),(95,75,90,65)},计算每个学生的总分和平均成绩并输出,结果保留一位小数。 #include voidmain() { floatave; inta[3][4],i,j,s; for(i=0;i<3;i++) { s=0; for(j=0;j<4;j++) { scanf("%d",&a[i][j]); s=s+a[i][j]; } printf("s=%d,ave=%f\n",s,(float)s/4); } } 9、求100之内自然数中最大的能被31整除的数。 #include voidmain() { inti; for(i=100;i>0;i--) if(i%31==0) { printf("%d",i); break; } } 10、求以下数列前15项的和: 2/1,3/2,5/3,8/5,13/8,21/13,... #include voidmain() { intn,a1,a2,a3; doublesum=0; for(n=1,a1=1,a2=1;n<=15;n++) { a3=a1+a2; a1=a2; a2=a3; sum+=a3/n; } printf("%d",sum); } 11、从键盘输入10个数,统计非正数的个数,并计算非正数的和。 #include voidmain() {inti,n=0,sum=0; inta[10]; printf(“请输入10个数: ”); for(i=0;i<10;i++) scanf(“%d”,&a[i]); for(i=0;i<10;i++) if(a[i]>=0) {sum=sum+a[i]; n++;} printf("非负个数是%d,sum=%d\n",n,sum); } 12、输入任意三个数,按从小到大的顺序输出。 #include"stdio.h" main() { intx,y,z,t; scanf("%d%d%d",&x,&y,&z); if(x>y) { t=x;x=y;y=t; } if(x>z) { t=z;z=x;x=t; } if(y>z) { t=y;y=z;z=t; } printf("smalltobig: %d%d%d\n",x,y,z); } 13、输入一个不多于5位的正整数,判断它是几位数,并逆序输出各位数字。 #include voidmain() { intn,i,j; scanf("%d",&n); if(n>0&&n<10) printf("它是%d位数! \n",i=1); elseif(n>=10&&n<100) printf("它是%d位数! \n",i=2); elseif(n>=100&&n<1000) printf("它是%d位数! \n",i=3); elseif(n>=1000&&n<10000) printf("它是%d位数! \n",i=4); elseif(n>=10000&&n<100000) printf("它是%d位数! \n",i=5); else printf("输入的数超出范围! \n",i=0); for(j=0;j { printf("%d",n%10); n=n/10; } } 14、一个皮球从100米高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。 求当它第10次落地时,共经过了多少米,第10次反弹多高? #include voidmain() { floath=100,s=0; inti; for(i=1;i<=10;i++) { s=s+h; h=h/2; s=s+h; } printf("当它第10次落{地时,共经过了%f米,第10次反弹%f米高",s-h,h); 15、编写程序,使用循环结构输出下列图形: * * * * * * * * * * * * * * * * * * * * #include"stdio.h" voidmain() { inti,j; for(i=1;i<=5;i++) { for(j=1;j<=5-i;j++) printf(""); printf("****\n"); } } 16、求3行3列矩阵a[3][3]={1,2,3,4,5,6,7,8,9}非对角线上元素之和。 #include voidmain() { inta[3][3]={1,2,3,4,5,6,7,8,9}; inti,j,s=0; for(i=0;i<3;i++) for(j=0;j<3;j++) if(i! =j&&i+1! =2) s=s+a[i][j]; printf("%d",s); } 17、求1-1/2+1/3-1/4+...+1/99-1/100的值。 #include intmain() { inti; doublesum,k=1; for(i=1,sum=0;i<=100;i++) { sum+=k/i; k*=-1; } printf("%lf\n",sum); return0; } 18编程计算1*2*3+3*4*5+5*6*7+...+99*100*101的值。 #include voidmain() {inti,sum=0; for(i=1;i<=99;i=i+2) sum=sum+i*(i+1)*(i+2); printf("%d\n",sum); } 19、编程计算1! +2! +3! +...+10! 的值。 #include voidmain() {inti,j,sum1=1,sum=0; for(i=1;i<=10;i++) { for(j=1;j<=i;j++) sum1=sum1*j; sum=sum+sum1; } printf("1! +2! +3! +…+10! =%ld\n",sum); } 20、输入一串字符,逆序输出。 要求使用数组实现。 #include #include voidmain() {inti,j,t,n; chara[10]; printf("请输入字符串: "); gets(a); n=strlen(a);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 编程 答案