项目二 顺序结构程序设计 12编写程序 (2) void main() { float r,h; double v; scanf("%f,%f",&r,&h); v=(3.14*r*r)*h/2; v=v*100; v=v+0.5 v=(int)v; v=v/100; printf("v=%f\n",v); } (3) void main() { double c,f; scanf("%lf",&c); f=5/9*c+32; printf("f=%f\n",f); } (4) { int m; printf("input m:"); scanf("%d",&m); a=m/100; b=m%100/10; c=m%10; m=c*100+b*10+a; printf("%d\n",m); } (5) void main() { int a,b; scanf("%d,%d",&a,&b); printf("a+b=%d\n",a+b); printf("a-b=%d\n",a-b); printf("a*b=%d\n",a*b); printf("a/b=%d\n",a/b); printf("a/b=%f\n",(float)a/b); printf("a%%b=%d\n",a%b); } (6) #include"stdio.h" void main() { char ch,ch1,ch2; ch=getchar(); ch1=ch-1; ch2=ch+1; printf("%c,%c\n",ch1,ch2); } (7) void main() { int m; scanf("%d",&m); a=m/1000; b=m/100%10; c=m%100/10; d=m%10; a=(a+5)%10; b=(b+5)%10; c=(c+5)%10; d=(d+5)%10; m=d*1000+c*100+b*10+a; printf("%d\n",m); } (8) #include"math.h" void main() { double a,n,p,y; scanf("%lf,%lf,%lf",&a,&n,&p); y=a*pow((1+p),n)-a; printf("年利率为%f\n",y); } 项目三 选择结构程序设计 6编写程序 (2) void main() { int m; printf("input m:"); scanf("%d",&m); if(m%5==0&&m%7==0) printf("yes\n"); else printf("no\n"); } (3) void main() { int x,y,z; printf("input x,y,z:"); scanf("%d,%d,%d",&x,&y,&z); if(x*x+y*y+z*z>1000) printf("%d\n",x*x+y*y+z*z); else printf("%d\n",x+y+z); } (4) #include"stdio.h" void main() { char ch1,ch2; int m,t; scanf("%c,%c",&ch1,&ch2); if(ch1160) gz=160*5+(m-160)*15; else gz=m*5; printf("gz=%d\n",gz); } (6) void main() { float gz,jz1,jz2,jz3,jz4; float x; scanf("%f",&x); jz1=1000*0.1; jz2=jz1+2000*0.15; jz3=jz2+5000*0.20; jz4=jz3+10000*0.25; if(x<=2000) jz=jz1+(x-1000)*0.1; else if(x<=5000) jz=jz2+(x-2000)*0.15; else if(x<=10000) jz=jz3+(x-5000)*.0.20; else jz=jz4+(x-10000)*0.25; gz=500+jz; printf("gz=%f\n",gz); } (7) void main() { int m,n=0; printf("input m:"); scanf("%d",&m); if(m%3==0) n=n+1; if(m%5==0) n=n+1; if(m%7==0) n=n+1; printf("n=%d\n",n); } (8) void main() { int a,b; char ch; scanf("%d,%d",&a,&b); scanf("%c",&ch); switch(ch) { case '+': printf("a+b=%d\n",a+b); case '-': printf("a-b=%d\n",a-b); case '*': printf("a*b=%d\n",a*b); case '/': printf("a/b=%d\n",a/b); } } (9) void main() { long n; int m=0,a,b,c,d,e; scanf("%ld",&n); if(n>9999) { m=5; a=n/10000; b=n%10000/1000; c=n/100%10; d=n%100/10; e=n%10; printf("%d是一个%d位数字\n",n,m); printf("%d位数字分别是:%d %d %d %d %d\n",a,b,c,d,e); } else if(n>999) {m=4; a=n/1000; b=n%1000/100; c=n%100/10; d=n%10; printf("%d是一个%d位数字\n",n,m); printf("%d位数字分别是:%d %d %d %d\n",m,a,b,c,d); } else if(n>99) {m=3; a=n/100; b=n%100/10; c=n%10; printf("%d是一个%d位数字\n",n,m); printf("%d位数字分别是:%d %d %d\n",m,a,b,c); } else if(n>9) {m=2; a=n/10; b=n%10; printf("%d是一个%d位数字\n",n,m); printf("%d位数字分别是:%d %d\n",m,a,b); } else {m=1; printf("%d是一个%d位数字\n",n,m); printf("%d位数字分别是:%d\n",m,n); } } (10) 这个题有问题,数字不是奇数就是偶数。 (11) void main() { double x,y; if(x>=3&&x<8) {if(x==(int)x) y=10+(int)(x-3)*1.6; else y=10+(int)(x-2)*1.6; } if(x>=8) { if(x==int(x)) y=18+(int)(x-8)*2; else y=18+(int)(x-7)*2; } } } 项目四 循环结构程序设计 7编写程序 (2) void main() { int i=0,s=0; while(s<1000) {i++; s=s+i; } printf("i=%d,s=%d\n",i,s); } (3) void main() { int i=0,s=0; while(s<1000) { i+=2; s=s+i; } printf("i=%d,s=%d\n",i,s); } (4) void main() { int i; long s=0; for(i=1;i<=20;i++) s=s+i*(i+1)*(i+2); printf("s=%ld\n",s); } (5) void main() { int i,n=1; double s=0; for(i=1;i<20;i++) { n=n*i; s=s+1.0/n; } printf("s=%f\n",s); } (6) void main() { int i; for(i=100;i<999;i++) if(i%3==2&&i%5==3&&i%7==4) printf("%d ",i); printf("\n"); } (7) void main() { int i; for(i=4;i<=99;i++) if((i%10==i)&&(i*i%10==i)) printf("%d ",i); else if((i%10!=i)&&(i*i%100==i)) printf("%d ",i); } (8) void main() { int i,a,b,c; for(i=3;i<=999;i+=3) { a=i/100; b=i%100/10; c=i%10; if(a==5||b==5||c==5) printf("%d ",i); } printf("\n"); } (9) void main() { int a,n,i=1; long sn=0,tn=0; printf("a,n=:"); scanf("%d,%d",&a,&n); while(i<=n) { tn=tn+a; sn=sn+tn a=a*10; ++i; } printf("a+aa+aaa+...=%ld\n",sn); } (10) void main() { float sn=200,hn=sn/4; int n; for(n=2;n<=10;n++) { sn=sn+2*hn; hn=hn/4; } printf("第10次落地时共经过%f m.\n",sn); printf("第10次反弹%f m.\n",hn); } (11) void main() { int hen,rabbit,h,f; printf("Input head and foot:\n"); scanf("%d%d",&h,&f); rabbit=(f-h-h)/2; hen=h-rabbit; printf("%d hens and %d rabbits\n",hen,rabbit); } (12) /* 百钱百鸡问题:100元买100只鸡,其中公鸡5元1只,母鸡3元1只, 小鸡1元3只,要求每种鸡至少有1只,要求编写程序统计并输出所有购买方案。 */ #include "Stdio.h" void main() { int cock,hen,chick,cond,num; for(cock=1;cock<=20;cock++) { for(hen=1;hen<33;hen++) { chick=100-cock-hen; cond=chick%3; num=5*cock+3*hen+chick/3; if(cond==0&&num==100) {printf("cock=%d zhi\then=%d zhi\tchick=%d zhi\ttotal=%d zhi\n", cock,hen,chick,cock+hen+chick); printf("cock*5=%d yuan\then*3=%d yuan\tchick/3=%d yuan total=%d yuan\n", cock*5,hen*3,chick/3,cock*5+hen*3+chick/3); printf("\n\n");}}} } (13) void main() { int m,n; for(m=1;m<5;m++) for(n=1;n<9;n++) if(m*20+n*10==100) printf("%d %d\n",m,n); } (14) void main() {int i,sum=1; for(i=1;i<10;i++) sum=(sum+1)*2; printf("%d",sum); } (15) void main() { int m=1; while(1) { if(m%2==1&&m%3==2&&m%5==4&&m%6==5&&m%7==0) { printf("%d\n",m); break; } m++; } } (16) void main() { int f1=1;f2=1;f3; for(i=3;i<=12;i++) { f3=f1+f2; f1=f2; f2=f3; } printf("f3=%d\n",f3); } (17) void main() { int m,n=0; for(m=2000;m<=2500;m++) { if(n%5==10) printf("\n"); if((m%400==0)||(m%4==0&&m%100!=0)) { printf("%d ",m); n++; } } } (18)第一个图案 void main() { int a, b, n ; for(a=1;a<=9;a++) { for(b=1;b<=a;b++) printf("%d*%d=%2d ",b,a,a*b); printf("\n"); } } 第二个图案 void main() {int i,j,k; for(i=1;i<=9;i++) {for(j=1;j<4*i;j++) printf(" "); for(k=i;k<=9;k++) printf("%2d ",k*i); printf("\n"); } } /*注意:printf("%2d ",k*i);这条语句里的%2d后面有两个空格*/ (19) #include"math.h" void main() { float x,x0,f,f1; x=1.5; do { x0=x; f=((2*x0-4)*x0+3)*x0-6; f1=(6*x0-8)*x0+3; x=x0-f/f1; } while(fabs(x-x0)>=1e-6); printf("the root of equation is %5.2f\n",x); }