程序设计要点.docx
- 文档编号:6239759
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:49
- 大小:91KB
程序设计要点.docx
《程序设计要点.docx》由会员分享,可在线阅读,更多相关《程序设计要点.docx(49页珍藏版)》请在冰豆网上搜索。
程序设计要点
1.顺序结构
1.已知三角形的三条边长a、b和c,求三角形的面积。
#include
#include
voidmain()
{
inta,b,c;
floats,area;
scanf("%d%d%d",&a,&b,&c);
s=0.5*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%5.2f\n",area);
}
2.求解鸡兔同笼问题。
已知笼子中鸡和兔的头数总共为h,脚数总共为f。
问鸡和兔各有多少只?
#include
voidmain()
{
inthen,rab;
inth,f;/*headfoot*/
scanf("%d%d",&h,&f);
hen=2*h-0.5*f;
rab=0.5*f-h;
printf("hen=%d\n",hen);
printf("rabbit=%d\n",rab);
}
3.编写程序输入圆半径r和高h,求圆周长、圆面积、圆球表面积、圆球体积和圆柱体积。
#definepi3.1415
#include
voidmain()
{
floatperi,area,surf,sphe,colu;
floatr,h;
scanf("%f%f",&r,&h);
peri=2*pi*r;
area=pi*r*r;
surf=4*pi*r*r;
sphe=4.0/3*pi*r*r*r;
colu=pi*r*r*h;
printf("perimeter=%.2f\n",peri);
printf("area=%.2f\n",area);
printf("surface=%.2f\n",surf);
printf("sphere=%.2f\n",sphe);
printf("column=%.2f\n",colu);
}
4.输入华氏温度值F,求出摄氏温度C,其公式为:
。
#include
voidmain()
{
floatf,c;
scanf("%f",&f);
c=5.0/9*(f-32);
printf("c=%.2f\n",c);
}
5.我国现有人口13亿,如果每年增长率r=0.8%,求多少年后我国人口超过26亿(根据公式
,推导出年数n可以用公式
计算)。
#include
#include
voidmain()
{
floatr=0.008;
intn;
n=log10
(2)/log10(1+r)+1;
printf("year=%d\n",n);
}
6.输入平面坐标系中两个点的坐标
和
,计算两点之间的距离。
#include
#include
voidmain()
{
floatdist;
intx1,y1,x2,y2;
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
dist=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf("distance=%.2f\n",dist);
}
7.使用Print语句输出以下图形。
#include
voidmain()
{
printf("*********\n");
printf("*********\n");
printf("*********\n");
printf("*********\n");
printf("*********\n");
}
2.选择结构问题
1.输入a、b值,如果a>b,那么交换a和b,使得a≤b。
#include
voidmain()
{
inta,b,t;
scanf("%d%d",&a,&b);
if(a>b)
{
t=a;
a=b;
b=t;
}
printf("a=%d\nb=%d\n",a,b);
}
2.输入变量a、b和c,将它们按照从小到大的顺序排序后输出。
#include
voidmain()
{
inta,b,c,t;
scanf("%d%d%d",&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("a=%d\n",a);
printf("b=%d\n",b);
printf("c=%d\n",c);
}
3.输入a、b值,输出其中较大的数。
#include
voidmain()
{
inta,b;
scanf("%d%d",&a,&b);
if(a>b)printf("largeris%d\n",a);
elseprintf("largeris%d\n",b);
}
4.输入x,求函数
的值。
#include
voidmain()
{
floatx,y;
scanf("%f",&x);
if(x<1)y=x;
elseif(x>=1&&x<10)y=2*x-1;
elsey=x*x+2*x+2;
printf("y=%.2f\n",y);
}
5.输入学生课程成绩mark,按照方法
给出评分等级。
#include
voidmain()
{
intc;
floatmark;
scanf("%f",&mark);
c=mark/10;
switch(c)
{
case10:
case9:
printf("Excellent\n");break;
case8:
printf("Fine\n");break;
case7:
printf("Notbad\n");break;
case6:
printf("Pass\n");break;
default:
printf("Failed\n");break;
}
}
8.给定整数,判定该数能否同时被6、9和14整除。
#include
voidmain()
{
inta;
scanf("%d",&a);
if(a%6==0&&a%9==0&&a%14==0)
printf("%dcan",a);
elseprintf("%dcannot",a);
printf("bedividedby6914simultaneously\n");
}
9.输入一个年号,判断该年号是否闰年。
#include
voidmain()
{
intyear;
scanf("%d",&year);
if(year%4==0&&year%100!
=0||year%400==0)
printf("%dis");
elseprintf("%disnot");
printf("aleapyear!
\n");
}
11.水仙花数是指一个三位整数,该数三个数位的立方和等于该数本身。
例如:
输入一个3位整数,判断该数是否水仙花数。
#include
voidmain()
{
intnum,a,b,c;
scanf("%d",&num);
a=num/100;
b=(num-a*100)/10;
c=num%10;
if(num==a*a*a+b*b*b+c*c*c)
printf("%dis",num);
elseprintf("%disnot",num);
printf("adaffodilnumber\n");
}
12.输入x,求函数
的值。
#include
voidmain()
{
floatx,y;
scanf("%f",&x);
if(x<0)y=2*x-1;
elseif(x>=0&&x<10)y=2*x+10;
elseif(x>=10&&x<100)y=2*x+100;
elsey=x*x;
printf("y=%.2f\n",y);
}
14.某服装店经营套装,也单件出售,针对单笔交易的促销政策为:
(1)不少于50套,每套80元;
(2)不足50套,每套90元;
(3)只买上衣每件60元;
(4)只买裤子每条45元;
编写计算器,分别输入一笔交易中上衣和裤子数,计算应收款。
#include
voidmain()
{
intm,n,min;
/*mstandsfor'jacket'*/
/*nstandsfor'trouser'*/
floatprice=0;
scanf("%d%d",&m,&n);
min=m;
if(min>n)min=n;
if(min>=50)
price+=80*min+60*(m-min)+45*(n-min);
elseprice+=90*min+60*(m-min)+45*(n-min);
printf("price=%.2f\n",price);
}
15.假如某地个人所得税的起征额为1600元,超过1600元以后纳税额按照以下方法计算:
(1)超过500元以内部分,税率5%;
(2)超过500元至2,000元部分,税率10%;
(3)超过2,000元至5,000元部分,税率15%;
(4)超过5,000元至20,000元部分,税率20%;
(5)超过20,000元至40,000元部分,税率25%;
(6)超过40,000元至60,000元部分,税率30%;
(7)超过60,000元至80,000元部分,税率35%;
(8)超过80,000元至100,000元部分,税率40%;
(9)超过100,000元部分,税率45%;
编写个人所得税计算器,输入某地个人所得税起征额和个人月收入总额,计算应纳个人所得税金额。
#include
main()
{
floatshou,qi,c,shui;
scanf("%f,%f",&shou,&qi);
c=shou-qi;
if(c<=500)
shui=c*0.5;
elseif(c<=2000)
shui=500*0.5+(c-500)*0.1;
elseif(c<=5000)
shui=0.5*500+0.1*1500+(c-2000)*0.15;
elseif(c<=20000)
shui=0.5*500+0.1*1500+0.15*3000+(c-5000)*0.2;
printf("%f\n",shui);
}
循环结构问题
1.求s=10!
,即求10的阶乘。
#include
voidmain()
{
inti;
doubles=1;
for(i=2;i<=10;i++)
s*=i;
printf("10!
=%.0f\n",s);
}
2.求s=100!
,即求100的阶乘。
#include
voidmain()
{
inti;
doubles=1;
for(i=2;i<=100;i++)
s*=i;
printf("100!
=%.0f\n",s);
}
3.打印1-100中,所有能被4整除的整数。
#include
voidmain()
{
inti;
for(i=1;i<=100;i++)
if(i%4==0)printf("%d",i);
printf("\n");
}
4.计算分数序列的和:
,直到最后项小于0.00001。
#include
voidmain()
{
inti=1;
floats=0;
while(1.0/i>=1e-5)
{
s+=1.0/i;
i++;
}
printf("s=%.2f\n",s);
}
5.利用公式
,求圆周率
,要求最后一项绝对值小于
。
#include
voidmain()
{
inti=1,s=1;
floatpi=0;
while(1.0/i>=1e-6)
{
pi+=s*1.0/i;
s=-s;
i=i+2;
}
pi=4*pi;
printf("pi=%f\n",pi);
}
7.输出Fibonacci数列:
1、1、2、3、5、8、13、21……的前40项。
#include
voidmain()
{
longf1=1,f2=1;
inti;
printf("%10ld",f1);
printf("%10ld",f2);
for(i=1;i<=19;i++)
{
if(i%2==0)printf("\n");
f1=f1+f2;
f2=f2+f1;
printf("%10ld",f1);
printf("%10ld",f2);
}
printf("\n");
}
8.素数是这样的整数,它只能被1和它自己整除。
输入一个整数m,判断该数是否素数。
#include
voidmain()
{
inti,m;
scanf("%d",&m);
for(i=2;i if(m%i==0)break; if(i>=m)printf("%dis",m); elseprintf("%disnot",m); printf("aprimenumber\n"); } 9.找出1到1000之间的所有素数。 #include voidmain() { inti,j,num=0; for(i=2;i<1000;i++) { for(j=2;j { if(i%j==0)break; } if(j>=i) { printf("%5d",i); ++num; if(num%10==0)printf("\n"); } } printf("\n"); } 10.编写程序,输出“*”,构成如图6-24所示的图形。 #include voidmain() { introw,col,p;/*column*/ for(row=1;row<=5;row++) { for(p=1;p<=5-row;p++) printf(""); for(col=1;col<=2*row-1;col++) printf("*"); printf("\n"); } for(row=4;row>=1;row--) { for(p=1;p<=5-row;p++) printf(""); for(col=1;col<=2*row-1;col++) printf("*"); printf("\n"); } } 12.求两个整数m和n的最大公约数和最小公倍数。 #include voidmain() { intm,n,min,i; intgcd=1,lcm=1; scanf("%d%d",&m,&n); min=m; if(min>n)min=n; for(i=2;i<=min;i++) if(m%i==0&&n%i==0)gcd=i; printf("gcd=%d\n",gcd); printf("lcm=%d\n",m*n/gcd); } 13.百钱买百鸡问题。 假定公鸡每只2元,母鸡每只3元,小鸡每只0.5元。 现有100元,要求买100只鸡,编程求出公鸡只数x、母鸡只数y和小鸡只数z。 #include voidmain() { intc,hen,ch;/*cockchick*/ for(c=0;c<=50;c++) for(hen=0;hen<=34;hen++) for(ch=0;ch<=100;ch++) if(2*c+3*hen+0.5*ch==100&&c+hen+ch==100) printf("cock=%d,hen=%d,chick=%d\n",c,hen,ch); } 16.求 。 #include voidmain() { doublesum=0; intx; for(x=1;x<=20;x++) sum+=2*x*x+3*x+1; printf("sum=%.0f\n",sum); } 17.打印1~10000中所有的闰年。 #include voidmain() { intyear,num=0; for(year=1;year<=10000;year++) if(year%4==0&&year%100! =0||year%400==0) { printf("%6d",year); ++num; if(num%10==0)printf("\n"); } } 18.我国人口为13亿,按照人口每年增加0.8%计算,多少年后我国的人口超过26亿。 #include voidmain() { intyear; floatr=0.008,amount=13; for(year=0;amount<26;year++) { amount=amount*(1+r); } printf("year=%d\n",year); } 19.求 ,直到最后项小于 。 #include voidmain() { doublen=1,sum=0; while(1/(n*n)>=1e-6) { sum+=1/(n*n); n++; } printf("sum=%f\n",sum); } 20.求分数序列 ,前20项之和。 #include voidmain() { inti; doublef1=1,f2=1,sum=0; for(i=1;i<=10;i++) { f1=f1+f2; sum+=f1/f2; f2=f2+f1; sum+=f2/f1; } printf("sum=%f\n",sum); } 21.求 ,直到最后项小于 。 #include voidmain() { doublei=1,n=1,s=0; while(1/n>=1e-6) { s+=1/n; n=n+i; i++; } printf("s=%f\n",s); } 22.求 ,直到n>=1000。 #include voidmain() { doublen,pi=2; for(n=1;n<1000;n++) pi*=4*n*n/(4*n*n-1); printf("pi=%f\n",pi); } 23.求 。 #include voidmain() { intn; doublet=1,sum=0; for(n=1;n<=10;n++) { t*=n; sum=sum+t; } printf("sum=%.0f\n",sum); } 25.水仙花数是指一个三位整数,该数三个数位的立方和等于该数本身。 例如: 。 求所有水仙花数。 #include voidmain() { inti,a,b,c; for(i=100;i<=999;i++) { a=i/100; b=(i-a*100)/10; c=i%10; if(i==a*a*a+b*b*b+c*c*c)printf("%d\n",i); } } 26.输入a和n,求s=a+aa+aaa+aaaa+…+aa…a(n个a)。 例如a=2,n=5,则s=2+22+222+2222+22222。 (提示: 设t为其中一项,则后一项t=t*10+a) #include voidmain() { doubles=0; inta,n,i,t; scanf("%d%d",&a,&n); t=a; for(i=1;i<=n;i++) { s+=t; t=t*10+a; } printf("s=%.0f\n",s); } 27.编程计算1000内的所有完数。 完数是指一个数恰好等于其因子之和,例如: 6=1+2+3(提示: 先设计求m所有因子的算法;再求因子之和,并判断m是否完数;最后求所有完数)。 #include voidmain() { inti,j,sum; printf("daffodilnumber: \n"); fo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 要点