c语言经典试题答案.docx
- 文档编号:11966625
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:25
- 大小:19.02KB
c语言经典试题答案.docx
《c语言经典试题答案.docx》由会员分享,可在线阅读,更多相关《c语言经典试题答案.docx(25页珍藏版)》请在冰豆网上搜索。
c语言经典试题答案
1、输入两个数,输出较大数的平方值。
#include
main()
{inta,b,t;
printf("Pleaseentertwonumbers:
");
scanf("%d%d",&a,&b);
if(a>b)
{a=t;a=b;b=t;}
printf("Theresultis:
%d",b*b);
getch();
}
2、计算并输出50-100间的数的和。
#include"stdio.h"
main()
{inti,sum;
for(i=50;i<=100;i++)
sum=sum+i;
printf("sumis%d",sum);
getch();
}
3、用数组编程,有一个4×4的矩阵,编程序计算并输出对角线元素之和
#include
main()
{inta[4][4],i,j,sum=0;
printf("Pleaseenter16numbers:
");
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(i==j)
sum=sum+a[i][j];
printf("Theresultis:
%d",sum);
getch();}
4、编写程序,通过键盘输入2个整数,计算并输出它们的平均值。
#include"stdio.h"
main()
{inti,j,avg;
printf("entertwonumber:
/n");
scanf("%d%d",&i,&j);
avg=(i+j)/2;
printf("avgis%d",avg);
getch();
}
5、编写程序,在屏幕上输出字符串"2011 C test"。
#include"stdio.h"
#include"conio.h"
main()
{
printf("2011Ctest\n");
getch();}
6、铁路托运行李规定:
行李重不超过50公斤的,托运费按每公斤0.15元计费;如超过50公斤,超过部分每公斤加收0.10元。
编一程序完成输入行李重,计算并输出托运费。
#include
main()
{inti,j;
doublesum=0;
printf("Pleaseentertheweight:
");
scanf("%d",&i);
if(i<=50)
sum=0.15*i;
else
{j=i-50;
sum=7.5+0.25*j;}
printf("Theresultis:
%.2f",sum);
getch();}
7、计算并输出50-100间的偶数和。
#include"stdio.h"
#include"conio.h"
main()
{inti,sum=0;
for(i=50;i<=100;i++)
if(i%2==0)
sum=sum+i;
printf("sumis%d",sum);
getch();}
8、把10个整数装入一维数组,求其最大值及所在位置并输出。
#include
main()
{inta[10],i,f;
printf("Pleaseenter10numbers:
");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
f=0;
for(i=0;i<10;i++)
if(a[i]>a[f])
f=i;
printf("Theresultis:
%d,locate:
%d",a[f],f+1);
getch();}
9、输入三个大字母,将其转换成小写字母并输出。
#include
main()
{chara[3];
inti;
printf("Pleaseenterthreeexpress:
");
gets(a);
for(i=0;i<3;i++)
a[i]=a[i]+'a'-'A';
printf("Theresultis:
");
puts(a);
getch();
}
10、输入三个整数,如果能够构成三角形的三边,计算并输出三角形的周长,否则输出"Data error!
"
#include
main()
{inta,b,c,sum=0;
doubled,f;
printf("Pleaseenterthreeline:
");
scanf("%d%d%d",&a,&b,&c);
d=(a+b+c)/2.0;
f=(d-a)*(d-b)*(d-c);
if(f>0)
{sum=a+b+c;
printf("s=%d",sum);}
else
printf("DATAERROR!
");
getch();
}
11、输入一行字符,统计并输出字母"a"出现的频数及频率。
#include
main()
{chara[80];
inti,j=0;
printf("Pleaseenteraexpresses:
");
gets(a);
for(i=0;i<80;i++)
if(a[i]=='a')
j++;
printf("Theresultis:
%d",j);
getch();
}
12、输入一个三位数,计算并输出各位数字平方之和。
#include"stdio.h"
#include"conio.h"
main()
{
inti,sum=0,a,b,c;
printf("enteronenumber:
");
scanf("%d",&i);
a=i%10;
b=(i/10)%10;
c=i/100;
sum=a*a+b*b+c*c;
printf("sumis%d",sum);
getch();
}
13、输入三个整数,输出大到小排序。
#include
main()
{inta[3];
inti,j,index,k;
printf("Pleaseenterthreenumbers:
");
for(i=0;i<3;i++)
scanf("%d",&a[i]);
for(i=0;i<2;i++)
{index=i;
for(j=i+1;j<3;j++)
if(a[j]>a[index])
index=j;
k=a[index];
a[index]=a[i];
a[i]=k;}
printf("Theresultis:
");
for(i=0;i<3;i++)
printf("%6d",a[i]);
getch();
}
14、计算并输出[2,55]区间内奇数的平方和。
#include
main()
{inti,sum=0;
for(i=2;i<=55;i++)
if(i%2==1)
sum=sum+i*i;
printf("Theresultis:
%d",sum);
getch();
}
15、输入10个数据,按从小到大的顺序输出。
#include
main()
{inta[10];
inti,j,index,k;
printf("Pleaseentertennumbers:
");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
{index=i;
for(j=i+1;j<10;j++)
if(a[j] index=j; k=a[index]; a[index]=a[i]; a[i]=k;} printf("Theresultis: "); for(i=0;i<10;i++) printf("%6d",a[i]); getch(); } 16、编写程序,输入华氏温度,计算并输出摄氏温度。 (计算公式为: C=5/9(F-32)) #include main() {intf,c; printf("Pleaseenterthef: "); scanf("%d",&f); c=5*(f-32)/9; printf("Thecis: %d",c); getch(); } 17、设计一个简易计算器,根据输入运算符(+、*)的不同,计算两个数的和、积。 #include main() {doublevalue1,value2; charoperator; printf("Typeinanexpression: "); scanf("%lf%c%lf",&value1,&operator,&value2); switch(operator){ case'+': printf("=%.2f\n",value1+value2); break; case'*': printf("=%.2f\n",value1*value2); break; } getch(); } 18、编程判断输入的一个字符串str是否为"回文",所谓"回文"是指这个字符串正读和倒读都是一样的。 如"asdsa"是回文。 要求定义并调用函数fhuiwei(char *p)来完成判断的过程。 #include"stdio.h" #include"string.h" main() { intfhuiwei(char*p); char*q; gets(q); if(fhuiwei(q)==1)printf("yes"); elseprintf("no"); getch(); } intfhuiwei(char*p) {intj; inti=0; char*q; q=p; while(*p! ='\0') {p++; i++; } p--; for(j=0;j<=i/2;j++) {if(*p! =*q)break; q++; p--; } if(j>i/2)return1; elsereturn0; } 19、有10个整型元素的一维数组;求: (1)平均值。 (2)统计低于平均值的元素个数并输出。 #include main() {inta[10]; inti,j=0,sum=0; doubleavg; printf("Pleaseentertennumbers: "); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<10;i++) sum=sum+a[i]; avg=sum/10; for(i=0;i<10;i++) if(a[i] j++; printf("Theaverageis: %.2f,Thenumberis: %d",avg,j); getch(); } 20编写程序,输入两个整数,计算并输出它们的立方和。 #include #include main() {inta,b,sum=0; printf("entertwonumber: \n"); scanf("%d%d",&a,&b); sum=pow(a,3)+pow(b,3); printf("sumis%d\n",sum); getch(); } 21、输入一元二方程的系数,计算并输出方程的实根。 (保留2位小数)。 #include main() {inta,b,c,d; doublex1,x2; printf("Pleaseenterthreenumbres: "); scanf("%d%d%d",&a,&b,&c); d=b*b-4*a*c; if(d>0){ x1=((-b+sqrt(d))/2*a); x2=((-b-sqrt(d))/2*a); printf("x1=%.2f,x2=%.2f",x1,x2);} elseprintf("Noresult"); getch();} 22、计算并输出s=50+49+48+……+1。 #include main() {inti,s=0; for(i=1;i<=50;i++) s=s+i; printf("sis%d",s); getch(); } 23、用数组编程,有一个3×4的矩阵,编程序求出最大的那个元素的值,以及其所在的行号和列号。 #include main() {inta[3][4]; inti,j,h,k; printf("Pleaseenter12numbers: "); for(i=0;i<3;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]); h=0; k=0; for(i=0;i<3;i++) for(j=0;j<4;j++) if(a[i][j]>a[h][k]) {h=i;k=j;} printf("Themaxis: %d,%d,%d",a[h][k],h,k); getch(); } 24、编写一个程序,其功能为: 从键盘输入三个数x、y、z,判断x+y=z是否成立,若成立输出"x+y=z"的信息,否则输出"x+y! =z"的信息。 #include main() {intx,y,z; printf("enterthreenumber: \n"); scanf("%d%d%d",&x,&y,&z); if(x+y==z) {printf("x+y==z");} else{printf("x+y! =z");} getch(); } 25、计算并输出2-9间的数的乘积。 #include main() {inta[8]; inti,d=1; printf("Pleaseentereightnumbers: "); for(i=0;i<8;i++) scanf("%d",&a[i]); for(i=0;i<8;i++) d=d*a[i]; printf("Theresultis: %d",d); getch(); } 26、利用数组输入10个整数,求这10个整数的和。 #include main() {inta[10]; inti,sum=0; printf("Pleaseentertennumbers: "); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<10;i++) sum=sum+a[i]; printf("Theresultis: %d",sum); getch(); } 27、输入半径r的值,计算并输出圆的周长和面积。 (保留2位小数)。 #include main() {intr; floatC,V; printf("enteranumber: /n"); scanf("%d",&r); C=2*3.14*r; V=3.14*r*r; printf("Cis%.2f\n,Vis%.2f",C,V); getch(); } 28、搬砖问题: 36块,36人搬,男搬4,女搬3,两个小孩抬一砖,问要求一次全搬完,男女小孩各若干? #include main() {inta,b,c; printf("abc\n"); for(a=0;a<=9;a++) for(b=0;b<=12;b++) for(c=0;c<=36;c++) if(a+b+c==36&&a*4+b*3+c/2==36) printf("%6d%6d%6d\n",a,b,c); getch();} 29、用数组编程,将输入的10个整数按从小到大的顺序排列,输出次小数。 #include main() {inta[10]; inti,j,index,k; printf("Pleaseentertennumbers: "); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<9;i++) {index=i; for(j=i+1;j<10;j++) if(a[j] index=j; k=a[index]; a[index]=a[i]; a[i]=k;} printf("Theresultis: %d",a[1]); getch(); } 30、编写程序,输入两个整数,计算并输出它们的平方和。 #include #include main() {inta,b,sum=0; printf("entertwonumber: /n"); scanf("%d%d",&a,&b); sum=pow(a,2)+pow(b,2); printf("sumis%d\n",sum); getch(); } 31、输入三个数,按由小到大的顺序排列并输出。 #include main() {inta[3]; inti,j,index,k; printf("Pleaseenterthreenumbers: "); for(i=0;i<3;i++) scanf("%d",&a[i]); for(i=0;i<2;i++) {index=i; for(j=i+1;j<3;j++) if(a[j] index=j; k=a[index]; a[index]=a[i]; a[i]=k;} printf("Theresultis: "); for(i=0;i<3;i++) printf("%6d",a[i]); getch(); } 32、输入球的半径,计算并输出球的体积。 (保留3位小数)。 #include main() {inti; floatV; printf("enteranumber: /n"); scanf("%d",&i); V=(4/3)*3.14*i*i*i; printf("Vis%.3f\n",V); getch(); } 33、用数组编程,现有10名评委为参选手打分,去掉两个最高分,两个最低分,求这位参赛选手得分。 #include main() {inta[10]; inti,j,index,k,sum=0; printf("Pleaseentertennumbers: "); for(i=0;i<10;i++) scanf("%d",&a[i]); for(i=0;i<9;i++) {index=i; for(j=i+1;j<10;j++)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 经典 试题答案