C语言程序设计习题3Word文档格式.docx
- 文档编号:18290642
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:21
- 大小:42.72KB
C语言程序设计习题3Word文档格式.docx
《C语言程序设计习题3Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计习题3Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
\n"
);
%f"
f);
c=5*(f-32)/9;
%.2f\n"
c);
36↙
2.22
6.输入一个三位整数,要求输出它的百位数、十位数和个位数。
intnum;
/*num表示一个三位整数*/
inta,b,c;
/*a,b,c分别表示百位、十位和个位上的数字*/
%d"
num);
a=num/100;
b=(num-a*100)/10;
c=num-a*100-b*10;
123↙
1,2,3
7.小红有面值1分的硬币638枚,可以兑换成几元几角剩余几分?
说明:
100枚1分的硬币可以兑换成1元,10枚1分的硬币可以兑换成1角。
兑换原则是面额从大到小。
inta=638;
intyuan;
intjiao;
intfen,temp;
yuan=a/100;
temp=a%100;
jiao=temp/10;
fen=temp%10;
1元的数量:
%d\n"
yuan);
1角的数量:
jiao);
1分的数量:
fen);
程序运行结果如下:
6
3
8
8.设圆柱的半径为2.5,圆柱的高为4,求圆柱的体积。
用scanf函数输入数据,printf函数输出计算结果,输出时要求有文字说明,取两位小数。
#include<
#definePI3.1415926
intmain()
floatr,h,v;
Pleaseinputr,h:
"
%f,%f"
r,&
h);
v=PI*r*r*h;
半径为:
%.2f,高为:
%.2f的圆柱体体积为:
r,h,v);
2.5,4↙
2.50,高为:
4.00的圆柱体体积为:
78.54
9.输入三角形的三边,计算三角形的面积。
要求:
对输入的3个边长进行判断,如果能构成三角形,则计算三角形的面积;
否则,则显示“构不成三角形!
”信息。
math.h>
floats,area;
if(a+b>
c&
&
a+c>
b&
b+c>
a)
{
s=(float)(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
面积为:
area);
}
else
printf("
边长分别为%d、%d、%d的三边构不成三角形!
3,4,6↙
5.33
3,6,12↙
边长分别为3、6、12的三边构不成三角形!
10.设计一个C语言程序,求5个数中的最大数和最小数。
inta,b,c,d,e,max,min;
%d%d%d%d%d"
c,&
d,&
e);
max=min=a;
max)max=b;
if(b<
min)min=b;
if(c>
max)max=c;
if(c<
min)min=c;
if(d>
max)max=d;
if(d<
min)min=d;
if(e>
max)max=e;
if(e<
min)min=e;
max:
%d,min:
max,min);
25689↙
9,min:
2
11.判断输入的字符属于哪一类字符:
大写字母、小写字母、数字还是其他字符。
charch;
%c"
ch);
if(ch>
=48&
ch<
=57)
该字符为数字!
elseif(ch>
=65&
=91)
该字符为大写字母!
=97&
=122)
该字符为小写字母!
else
该字符为其他字符!
2↙
12.用if语句和switch语句分别编写程序,实现以下功能:
从键盘输入数字1,2,3,4,分别显示Excellent,Good,Pass,Fail。
输入其他字符时显示Error。
/*用if语句编写程序*/
if(ch=='
1'
)
Excellent\n"
elseif(ch=='
2'
Good\n"
3'
)
Pass\n"
4'
Fail\n"
Error\n"
1↙
Excellent
/*用switch语句编写程序*/
charch;
scanf("
switch(ch)
case'
:
printf("
break;
case'
default:
13.假设国家对个人收入所得税是按这样的标准进行的:
起征点是2000元,2000~3000元为5%,3000~5000元为15%,5000~10000元为20%,10000元以上为30%。
编程输入工资,计算实际工资所得及税金。
intgz;
floatsj;
gz);
if(gz<
2000)
不需要纳税!
return;
elseif(gz<
3000)
sj=gz*0.05;
5000)
sj=gz*0.15;
10000)
sj=gz*0.2;
sj=gz*0.3;
工资为:
%d,税金为:
gz,sj);
1500↙
2800↙
2800,税金为:
140.00
4500↙
4500,税金为:
675.00
8500↙
8500,税金为:
1700.00
20000↙
20000,税金为:
6000.00
14.求方程ax2+bx+c=0的根。
当b2-4ac>
0时,有两个不等的实根;
当b2-4ac=0时,有两个相等的实根;
当b2-4ac<
0时,有两个虚根。
doubledelt,x1,x2;
%d%d%d"
delt=b*b-4*a*c;
if(delt==0)
该方程有两个相等的实根!
x1=x2=-(double)b/(2*a);
%.2f,%.2f\n"
x1,x2);
else
if(delt>
=0)
{
x1=(-b+sqrt(delt))/(2*a);
x2=(-b-sqrt(delt))/(2*a);
}
else
printf("
该方程无实根!
345↙
462↙
-0.50,-1.00
441↙
-0.50,-0.50
15.从1~100中找出能被5或7整除的数。
inti;
for(i=1;
i<
=100;
i++)
if(i%5==0||i%7==0)
%5d"
i);
}
return0;
5571014152021252830354042454950
555660636570757780848590919598100
16.计算sum=1+11+111+1111+11111。
inti,t=0,s=0;
for(i=1;
=5;
t=t*10+1;
t);
s=s+t;
s);
1
11
111
1111
11111
12345
17.输入两个正整数m和n,求出它们的最大公约数和最小公倍数。
intm,n,t,gcd,gcm;
inta,b;
%d%d"
m,&
n);
t=m%n;
a=m;
b=n;
while(t!
m=n;
n=t;
gcd=n;
gcm=a*b/gcd;
%d和%d的最大公约数为:
%d,最小公倍数为:
a,b,gcd,gcm);
2515↙
25和15的最大公约数为:
5,最小公倍数为:
75
18.输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
intm=0;
intk=0;
intn=0;
intt=0;
ch=getchar();
while(ch!
='
\n'
if(ch==32)
k++;
=48&
ch<
n++;
=90||ch>
m++;
t++;
字母的个数为:
m);
空格的个数为:
k);
数字的个数为:
n);
其他字符的个数为:
123abcdefghyyyy;
;
…11166@#%↙
12
19.从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值。
floatcj,sum=0,aver;
=10;
scanf("
cj);
sum=sum+cj;
aver=sum/10;
sum=%.2f,aver=%.2f"
sum,aver);
68757456787581767585↙
sum=743.00,aver=74.30
20.猴子吃桃问题。
猴子第一天摘下了若干桃子,当即吃了一半,还不过瘾,又多吃了一个。
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第4天早上想要再吃时,只剩下一个桃子了。
求第一天猴子共摘了多少桃子。
intn=1;
for(i=9;
i>
=1;
i--)
{
n=2*(n+1);
4
10
22
46
94
190
382
766
1534
21.打印出所有的“水仙花数”。
所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
例如,153就是一个水仙花数,因为153=13+53+33
inti,bw,sw,gw;
水仙花数是:
for(i=100;
999;
bw=i/100;
sw=(i-bw*100)/10;
gw=i-bw*100-sw*10;
if(i==bw*bw*bw+sw*sw*sw+gw*gw*gw)
153370371407
22.用泰勒级数求e的近似值,直到最后一项小于10-6为止。
e=1+1/1!
+1/2!
+1/3!
+…+1/n!
inti=1;
longf=1;
doublet=1,e=1;
while(t>
=1e-6)
e=e+t;
i=i+1;
f=f*i;
t=(double)1/f;
%.3lf\n"
e);
2.718
23.输入一个整数,分解各位数字。
例如,输入“1298”,输出“8-9-2-1-”。
请编写一个C语言程序解决该问题。
intnum,n1,n2;
n2=num;
while(n2!
n1=n2%10;
n2=n2/10;
%d-"
n1);
1298↙
8-9-2-1-
24.有一个分数序列2/1,3/2,5/3,8/5,13/8,21/13…求出这个数列的前20项之和。
floatf,s=0;
floatf1=1;
floatf2=1;
=20;
f=f1+f2;
f1=f2;
f2=f;
s=s+f2/f1;
分数序列之和为:
s);
32.660259
25.打印出以下图案。
*
***
*****
*******
*
inti,j;
for(i=1;
=4;
for(j=1;
j<
20-i;
j++)
"
for(j=1;
=2*i-1;
{
*"
}
for(i=3;
{
return0;
26.百马百担问题:
有100匹马,驮100担货,大马驮3担,中马驮2担,两匹小马驮1担,问用大马、中马、小马各多少匹?
请设计解决该问题的C语言程序。
解:
intdm;
for(dm=0;
dm<
=33;
dm++)
intzm;
for(zm=0;
zm<
=50;
zm++)
intxm;
xm=100-dm-zm;
if(3*dm+2*zm+xm/2==100)printf("
dm,zm,xm);
1,32,67
2,30,68
4,27,69
5,25,70
7,22,71
8,20,72
10,17,73
11,15,74
13,12,75
14,10,76
16,7,77
17,5,78
19,2,79
20,0,80
27.计算1~10十个整数的阶乘和,即计算1!
+2!
+3!
+…+9!
+10!
intmain()
inti,j;
longfact,sum=0;
fact=1;
for(j=1;
=i;
fact=fact*j;
sum=sum+fact;
sum:
%ld\n"
sum);
4037913
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 习题