C语言上机题库Word格式文档下载.docx
《C语言上机题库Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言上机题库Word格式文档下载.docx(36页珍藏版)》请在冰豆网上搜索。
![C语言上机题库Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2022-11/17/1e6bc27c-0412-4983-ba3f-b9d18eb79af9/1e6bc27c-0412-4983-ba3f-b9d18eb79af91.gif)
inta,b,c,aver;
scanf("
%d%d%d"
&
a,&
b,&
c);
aver=(a+b+c)/3;
aver);
3.13根据c=5/9*(f-32)公式,输入华氏温度f,求摄氏温度c,结果精确到小数点后两位。
80.0
26.67
floatf,c;
%f"
f);
c=5.0/9*(f-32);
%.2f\n"
c);
3.14输入一个四位正整数,求其各位数字之和。
例如,1357的各位数字之和为1+3+5+7=16。
1357
16
intnum;
inta,b,c,d,total;
%d"
num);
a=num/1000;
b=(num-a*1000)/100;
c=(num-a*1000-b*100)/10;
d=num-a*1000-b*100-c*10;
total=a+b+c+d;
total);
3.15输入一大写字母,输出对应的小写字母。
A
a
charc1,c2;
%c"
c1);
c2=c1+32;
c2);
3.16输入两个整数分别赋值给变量a和b,将a和b的值互换,输出a、b的值。
35
53
inta,b,temp;
%d%d"
b);
temp=a;
a=b;
b=temp;
%d%d"
a,b);
3.21输入一小写字母,输出对应的大写字母。
b
putchar(ch-32);
putchar('
\n'
);
3.22输入任意四位整数,以反序的方式输出该整数。
例如:
输入1234,输出4321
7531
charc1,c2,c3,c4;
%c%c%c%c"
c1,&
c2,&
c3,&
c4);
%c%c%c%c\n"
c4,c3,c2,c1);
3.23输入两个电阻值,求它们并联和串联的电阻值,结果保留两位小数。
并联和串联的电阻值的计算公式为:
并联电阻:
PR=(R1*R2)/(R1+R2)串联电阻:
RS=R1+R2
1.888.00
doubler1,r2,pr,rs;
%lf%lf"
&
r1,&
r2);
pr=(r1*r2)/(r1+r2);
rs=r1+r2;
%.2f%.2f\n"
pr,rs);
3.24使用getchar函数分别输入两个字符变量c1和c2,要求c1、c2均是字符'
0'
到'
9'
中的一个字符。
将c1、c2中的值转换成相应的数字,如将字符'
1'
转换为数字1,并输出这两个数相加的结果。
8
c1=getchar();
c2=getchar();
c1=c1-48;
c2=c2-48;
c1+c2);
3.25输入梯形的上下底边长度和高,计算梯形的面积,保留一位小数。
计算梯形面积的公式如下:
S=h*(a+b)/2
354
16.0
inta,b,h;
floatS;
%d%d%d"
h);
S=h*(a+b)/2.0;
%.1f"
S);
3.26输入圆的半径,求圆的周长和面积,结果精确到小数点后两位。
已知圆周率为3.14159。
5.0
31.4278.54
voidmain()
{doubler,l,s;
%lf"
r);
l=2*3.14159*r;
s=3.14159*r*r;
l,s);
4.1输入整数a和b,如果a^2+b^2大于100,则输出a+b的值;
否则,输出a-b的值。
-2
inta,b;
if(a*a+b*b>
100)
printf("
a+b);
else
a-b);
4.2输入整数n,如果n既是5的整倍数又是7的整倍数,则输出yes;
否则输出no。
35
Yes
intn;
n);
if(n%5==0&
&
n%7==0)
yes\n"
else
no\n"
4.3商场为促销实行打折销售商品,假定商品价格为p元,编程计算某顾客购买x件商品的应付金额,保留一位小数。
先输入价格p,再输入购买的件数x。
计算公式sum=p*x*(1-d)其中,sum为应付金额,d为折扣(x<
5时:
d=0;
5<
=x<
10时:
d=1%;
10<
21时:
d=2%;
21<
30时:
d=4%;
30<
=x时:
d=6%;
)。
9.915
145.5
intx;
floatp,sum,d;
scanf("
%f%d"
p,&
x);
if(x<
5)
d=0;
elseif(x<
10)
d=0.01;
21)
d=0.02;
30)
d=0.04;
elsed=0.06;
sum=p*x*(1-d);
4.4输入'
或'
a'
f'
中的一个字符,代表一个十六进制数,将其转换为十进制数,求该数与15的和并输出。
6
21
if(ch>
='
ch<
)
ch-'
+15);
elseif(ch>
+10+15);
IaputError!
!
\n"
4.5已知一张如下所示的时间表:
***************Time***************
1morning
2afternoon
3night
**********************************
Pleaseinputyourchoice:
根据输入的序号显示相应的问候信息:
输入1时,输出Goodmorning;
输入2时,输出Goodafternoon;
输入3时,输出Goodnight;
对于其他的输入,则输出error。
2
Goodafternoon
intchoice;
choice);
switch(choice)
{
case1:
printf("
Goodmorning\n"
break;
case2:
Goodafternoon\n"
case3:
Goodnight\n"
default:
error\n"
}
4.6输入3个整数,要求按从小到大的顺序输出。
531
135
inta,b,c,t;
if(a>
b){t=a;
a=b;
b=t;
c){t=a;
a=c;
c=t;
if(b>
c){t=b;
b=c;
%d%d%d\n"
a,b,c);
return0;
4.7输入两个实数和一个算术运算符(+,-,*,/),根据运算符执行相应的运算并输出运算结果,保留一位小数。
(提示:
运算符先输入,两个实数后输入)
+1.52.1
3.6
doublea,b;
charop;
%c%lf%lf"
op,&
if(op=='
+'
)printf("
%.1f\n"
elseif(op=='
-'
*'