C语言上机题库Word文档格式.docx
- 文档编号:16881964
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:36
- 大小:21.78KB
C语言上机题库Word文档格式.docx
《C语言上机题库Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言上机题库Word文档格式.docx(36页珍藏版)》请在冰豆网上搜索。
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=='
-'
*'
a*b);
elseprintf("
a/b);
4、8输入3个整数,要求按从大到小得顺序输出。
if(a<
if(b<
5、11编写程序,接收两个整数num1与num2,找出这两个数之间所有奇数得与。
1100
2500
intnum1,num2,t,i,sum=0;
num1,&
num2);
if(num1>
num2)
{t=num1;
num1=num2;
num2=t;
if(num1%2==0)num1++;
for(i=num1;
i<
=num2;
i+=2)
sum+=i;
5、12输入10个分数(浮点型),去掉最高分与最低分后求平均分,保留一位小数。
0123456789
4、5
{inti;
doublesum=0,a,max,min;
a);
sum=max=min=a;
for(i=1;
=9;
i++)
{scanf("
if(max<
a)max=a;
if(min>
a)min=a;
sum=sum+a;
sum=sum-max-min;
sum/8);
5、13输入n,求1*2*3*、、、*n得值。
10
inti,n,k=1;
=n;
k=k*i;
k);
5、14根据用户输入得正整数a(1~9)与正整数n,求a+aa+、、、+aa、、、a(n个a)得值。
例如,当用户输入a为6,n为5时,结果为74070。
65
74070
{inta,n,i,t;
longintsum=0;
t=a;
{sum=sum+t;
t=t*10+a;
5、15已知函数头为voidavg(void),函数avg得功能:
输入10个分数(浮点型),去掉最高分与最低分,求平均分,保留一位小数。
编写main函数并调用函数avg。
voidavg(void)
inti;
floatsum,n,max,min,aver;
max=min=n;
sum=n;
for(i=2;
=10;
{
max=(max>
n)?
max:
n;
min=(min<
min:
sum+=n;
aver=(sum-max-min)/8;
5、16根据用户输入得正整数n,求1-1/2+1/3-1/4+、、、+((-1)^(n+1))/n得值。
保留两位小数。
0、50
inti,flag=1,n;
doublesum=0;
for(i=1;
i++)
{
sum+=1、0/i*flag;
flag=-flag;
5、21输入n,求1!
+2!
+3!
+、、、+n!
得值。
intsum=0,i,n,s=1;
s*=i;
sum+=s;
5、22根据用户输入得正整数n,求2/1+3/2+5/3+8/5+13/8+、、、得前n项之与。
3、50
voidmain(void)
inta=1,b=2,c,i,n;
doubled,sum=0;
for(i=1;
i<
=n;
i++)
{d=1、*b/a;
sum+=d;
c=a+b;
a=b;
b=c;
%、2f"
5、23根据用户输入得正整数n,求1-2/3+3/5-4/7+5/9-6/11+、、、得前n项之与。
0、33
inti,n,flag=1;
doublesum=0;
sum+=flag*1、0*i/(2*i-1);
flag=-flag;
5、24根据用户输入得正整数n,求数列1,2,3,5,8,13,21,34,、、、中第n项得值。
25
121393
inta=1,b=2,c,n,i;
for(i=3;
i<
c=a+b;
a=b;
b=c;
c);
return0;
5、25输入一行字符,统计其中英文字母、数字字符、空格与其她字符得个数。
kf3f5;
p08d?
^@
5424
charc;
inteng=0,dig=0,space=0,others=0;
while(c!
{if((c>
c<
z'
)||(c>
Z'
))
eng++;
elseif(c>
dig++;
elseif(c=='
'
space++;
others++;
scanf("
%d%d%d%d\n"
eng,dig,space,others);
5、26根据用户输入得正整数n,输出数列0,1,2,3,6,11,20,37,68,、、、中第n项得值。
4
3
{inti,a=0,b=1,c=2,d,n;
for(i=4;
{d=a+b+c;
b=c;
c=d;
printf("
d);
5、31输入若干整数,以-1结束,去掉最大值与最小值,求平均值,保留一位小数。
13579-1
voidmain()
intscore;
doublesum=0,n=0,avg,max,min,b;
score);
max=min=b=score;
while(score!
=-1)
if(score>
max)
max=score;
if(score<
min)
min=score;
sum+=score;
n++;
scanf("
avg=(sum-max-min)/(n-2);
avg);
5、32输入两个正整数,求最大公约数。
155
intmain(void)
{inti,m,n,temp,maxgy;
scanf("
m,&
if(m>
n){temp=m;
m=n;
n=temp;
for(i=m;
i>
=1;
i--)
if(m%i==0&
n%i==0)
{maxgy=i;
maxgy);
5、33输入两个正整数,求最小公倍数。
515
15
if(m<
;
if(i%m==0&
i%n==0)
5、34输入一个正整数n,求n就是几位数。
main(void)
intn,sum=0,k=0;
while(n)
n/=10;
k++;
k);
5、35输入一个正整数n,判断n就是否为回文数。
所谓回文数,就是从左到右读这个数与从右到左读这个数就是一样得。
例如,98789就是回文数。
如果就是,输出"
yes"
如果不就是,则输出"
no"
。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 上机 题库