cfree题目2C语言典型程序.docx
《cfree题目2C语言典型程序.docx》由会员分享,可在线阅读,更多相关《cfree题目2C语言典型程序.docx(15页珍藏版)》请在冰豆网上搜索。
![cfree题目2C语言典型程序.docx](https://file1.bdocx.com/fileroot1/2022-11/21/cd8dc6da-0ddd-4e4f-aeb4-e5f753874938/cd8dc6da-0ddd-4e4f-aeb4-e5f7538749381.gif)
cfree题目2C语言典型程序
1、输入两个实数,按代数值由小到大的顺序输出这两个数。
(P87,例4.2)
#include
intmain()
{floata,b,t;
printf("请输入两个实数:
");
scanf("%f,%f",&a,&b);
if(a>b)
{t=a;
a=b;
b=t;
}
printf("%5.2f,%5.2f\n",a,b);
return0;
}
2、输入3个数a,b,c,要求按由小到大的顺序输出。
(P88,例4.3)
#include
intmain()
{floata,b,c,t;
printf("请输入三个实数:
");
scanf("%f,%f,%f",&a,&b,&c);
if(a>b)
{
t=a;
a=b;
b=t;
}
if(a>c)
{
t=a;
a=c;
c=t;
}
if(b>c)
{
t=b;
b=c;
c=t;
}
printf("%5.2f,%5.2f,%5.2f",a,b,c);
return0;
}
3、P86例4.1
#include
#include
intmain()
{doublea,b,c,disc,x1,x2,p,q;
scanf("%lf,%lf,%lf",&a,&b,&c);
disc=b*b-4*a*c;
if(disc<0)
printf("Thisequationhasn'trealroots\n");
else
{p=-b/(2.0*a);
q=sqrt(disc)/(2.0*a);
x1=p+q;x2=p-q;
printf("realroots:
\nx1=%7.2f\nx2=%7.2f\n",x1,x2);
}
return0;
}
4、P82第一题
#include
#include
intmain()
{
floatp,r,n;
r=0.1;n=10;p=pow(1+r,n);
printf("p=%f\n",p);
return0;
}
5、P99例4.4
#include
intmain()
{charch;
scanf("%c",&ch);
ch=(ch>='A'&&ch<='Z')?
(ch+32):
ch;
printf("%c\n",ch);
return0;
}
6、P100例4.5
#include
intmain()
{
intx,y;
scanf("%d",&x);
if(x<0)
y=-1;
else
if(x==0)y=0;
elsey=1;
printf("x=%d,y=%d\n",x,y);
return0;
}
7、P15第六题
#include
intmain()
{
inta,b,c,max;
printf("pleaseinputa,b,c:
\n");
scanf("%d,%d,%d",&a,&b,&c);
max=a;
if(max
max=b;
if(maxmax=c;
printf("Thelargestnumberis%d\n",max);
return0;
}
8、P84第七题
#include
intmain()
{
floath,r,l,s,sq,vq,vz;
floatpi=3.141526;
printf("请输入圆半径r,圆柱高h:
");
scanf("%f,%f",&r,&h);
l=2*pi*r;
s=r*r*pi;
sq=4*pi*r*r;
vq=3.0/4.0*pi*r*r*r;
vz=pi*r*r*h;
printf("圆周长为:
l=%6.2f\n",l);
printf("圆面积为:
s=%6.2f\n",s);
printf("圆球表面积为:
sq=%6.2f\n",sq);
printf("圆球体积为:
v=%6.2f\n",vq);
printf("圆柱体积为:
vz=%6.2f\n",vz);
return0;
}
9、P112第六题
#include
intmain()
{
intx,y;
printf("输入x:
");
scanf("%d",&x);
if(x<1)
{y=x;
printf("x=%3d,y=x=%d\n",x,y);}
elseif(x<10)
{y=2*x-1;
printf("x=%d,y=2*x-1=%d\n",x,y);}
else
{y=3*x-11;
printf("x=%d,y=3*x-11=%d\n",x,y);}
return0;
}
10、编写程序,输入a、b、c三个数,打印出最大者。
#include"stdio.h"
voidmain()
{
inta,b,c,t;
printf("Inputthreenumbers:
");
scanf("%d,%d,%d",&a,&b,&c);
printf("a=%d,b=%d,c=%d\n",a,b,c);
if(a>b){t=a;a=b;b=t;}
if(a>c){t=a;a=c;c=t;}
if(b>c){t=b;b=c;c=t;}
printf("MAX=%d\n",c);
return0;
}
11、编写程序,输入一个整数,打印出它是奇数还是偶数。
#include"stdio.h"
voidmain()
{inta;
printf("请输入一个数:
");
scanf("%d",&a);
if(a%2==0)
printf("a是偶数\n");
else
printf("a是奇数\n");
return0;
}
12、P82第二题
#include
#include
intmain()
{
floatr5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;
p=1000;r5=0.0585;r3=0.054;r2=0.0468;r1=0.0414;r0=0.0072;
p1=p*((1+r5)*5);
p2=p*(1+2*r2)*(1+3*r3);
p3=p*(1+3*r3)*(1+2*r2);
p4=p*pow(1+r1,5);
p5=p*pow(1+r0/4,4*5);
printf("p1=%10.2f\n",p1);
printf("p2=%10.2f\n",p2);
printf("p3=%10.2f\n",p3);
printf("p4=%10.2f\n",p4);
printf("p5=%10.2f\n",p5);
return0;
}
13、P33例2.16
#include
intmain()
{
inti,t;
t=1;
i=2;
while(i<=5)
{t=t*i;
i=i+1;
}
printf("%d\n",t);
return0;
}
14、P33例2.17
#include
intmain()
{
intsign=1;
doubledeno=2.0,sum=1.0,term;
while(deno<=100)
{
sign=-sign;
term=sign/deno;
sum=sum+term;
deno=deno+1;
}
printf("%f\n",sum);
return0;
}
15、P38例3.2
#include
intmain()
{
floatp0=1000,r1=0.0036,r2=0.0225,r3=0.0198,p1,p2,p3;
p1=p0*(1+r1);
p2=p0*(1+r2);
p3=p0*(1+r3/2)*(1+r3/2);
printf("p1=%f\np2=%f\np3=%f\n",p1,p2,p3);
return0;
}
16、P59例3.4
#include
#include
intmain()
{
doublea,b,c,s,area;
a=3.67;
b=5.43;
c=6.21;
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("a=%f\tb=%f\tc=%f\t",a,b,c);
printf("area=%f\n",area);
return0;
}
17、P78例3.8
#include
intmain()
{
chara='B',b='O',c='Y';
putchar(a);
putchar(b);
putchar(c);
putchar('\n');
return0;
}
18、P100例4.5
#include
intmain()
{
intx,y;
scanf("%d",&x);
if(x<0)
y=-1;
else
if(x==0)y=0;
elsey=1;
printf("x=%d,y=%d\n",x,y);
return0;
}
19、P102例4.6
#include
intmain()
{
chargrade;
scanf("%c",&grade);
printf("Yourscore:
");
switch(grade)
{
case'A':
printf("85~100\n");break;
case'B':
printf("70~84\n");break;
case'C':
printf("60~69\n");break;
case'd':
printf("<60\n");break;
default:
printf("enterdataerror!
\n");
}
return0;
}
20、P113第八题
#include
intmain()
{
floatscore;
chargrade;
printf("请输入学生成绩:
");
scanf("%f",&score);
while(score>100||score<0)
{printf("\n输入有误,请重新输入:
");
scanf("%f",&score);}
switch((int)(score/10))
{
case10:
case9:
grade='A';break;
case8:
grade='B';break;
case7:
grade='C';break;
case6:
grade='D';break;
case5:
case4:
case3:
case2:
case1:
case0:
grade='E';
}
printf("成绩是%5.1f,相应的等级是%c\n",score,grade);
return0;
}
21、P113第十题第一小问
#include
intmain()
{
inti;
doublebonus,bon1,bon2,bon4,bon6,bon10;
bon1=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+100000*0.05;
bon6=bon4+100000*0.03;
bon10=bon6+400000*0.015;
printf("请输入利润i:
");
scanf("%d",&i);
if(i<=100000)bonus=i*0.1;
elseif(i<=200000)bonus=bon1+(i-100000)*0.075;
elseif(i<=400000)bonus=bon2+(i-200000)*0.05;
elseif(i<=600000)bonus=bon4+(i-400000)*0.03;
elseif(i<=1000000)bonus=bon6+(i-600000)*0.015;
elsebonus=bon10+(i-1000000)*0.01;
printf("奖金是:
%10.2f\n",bonus);
return0;
}
22、P113第十题第二小问
#include
intmain()
{
inti;
doublebonus,bon1,bon2,bon4,bon6,bon10;
intbranch;
bon1=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bon10=bon6+400000*0.015;
printf("请输入利润i:
");
scanf("%d",&i);
branch=i/100000;
if(branch>10)branch=10;
switch(branch)
{
case0:
bonus=i*0.1;break;
case1:
bonus=bon1+(i-100000)*0.075;break;
case2:
case3:
bonus=bon2+(i-200000)*0.05;break;
case4:
case5:
bonus=bon4+(i-400000)*0.03;break;
case6:
case7:
case8:
case9:
bonus=bon6+(i-600000)*0.015;break;
case10:
bonus=bon10+(i-1000000)*0.01;
}
printf("奖金是%10.2f\n",bonus);
return0;
}
23、、P113第十一题
#include
intmain()
{
intt,a,b,c,d;
printf("请输入四个数:
");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d);
if(a>b){t=a;a=b;b=t;}
if(a>c){t=a;a=c;c=t;}
if(a>d){t=a;a=d;d=t;}
if(b>c){t=b;b=c;c=t;}
if(b>d){t=b;b=d;d=t;}
if(c>d){t=c;c=d;d=t;}
printf("排序结果如下:
\n");
printf("%d%d%d%d\n",a,b,c,d);
return0;
}
24、P17例2.1
#include
intmain()
{
inti=2,p=1;
while(i<=5)
{p=p*i;
i++;}
printf("p=%d\n",p);
return0;
}
25、判断某一年是否为闰年
#include
intmain()
{
intyear,leap;
printf("enteryear:
");
scanf("%d",&year);
if(year%4==0)
{
if(year%100==0)
{
if(year%400==0)
leap=1;
else
leap=0;
}
else
leap=1;
}
else
leap=0;
if(leap)
printf("&dis",year);
else
printf("%disnot",year);
printf("aleapyear.\n");
return0;
}