一、实验内容
1.有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的四位数。
#include<stdio.h> int main() { int i,j,k,l,m,n,f,g; for(i=1;i<10;i++) for(j=1;j<10;j++) for(k=1;k<10;k++) for(l=1;l<10;l++) { f=i*1000+j*100+k*10+l; g=l*1000+k*100+j*10+i; if(f==4*g&&i!=j&&j!=k&&k!=l) { printf("%04d",f); } } return 0; }
2.输入任意一个多位的数字,求各位数字之和。如果在【1,12】之内,则输出与和数字对应的月份的英文名称,否则输出***。
#include<stdio.h> int main() { int n,a,b,t=0; printf("输入一个多位数"); scanf("%d",&n); while(n>0) { a=n%10; n=n/10; t+=a; } if(t>=1&&t<=12) { switch(t) { case 1:printf("1 January "); break; case 2:printf("2 February "); break; case 3:printf("3 March "); break; case 4:printf("4 April "); break; case 5:printf("5 May "); break; case 6:printf("6 June "); break; case 7:printf("7 July "); break; case 8:printf("8 August "); break; case 9:printf("9 September "); break; case 10:printf("1O ctober "); break; case 11:printf("11 Noverber "); break; case 12:printf("12 December "); break; } } else { printf("%d *** ",t); } return 0; }
3.给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。
#include<stdio.h> int main() { int i,j,k,n,x,y=0; scanf("%d",&n); for(i=n;i<n+4;i++) for(j=n;j<n+4;j++) for(k=n;k<n+4;k++) if(i!=j&&j!=k&&k!=i) { x=i*100+j*10+k; printf("%d ",x); y++; if(y%6==0) { printf(" "); } } return 0; }
4.看商品猜价格
#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { int i=0,price,guess; char c; srand(time(NULL)); price=rand()%100+1; do { i=0; while(i<10) { printf("请输入您猜的价格"); scanf("%d",&guess); if(guess<=0) { printf("输入错误 "); } else { if(price>guess) { printf("猜小了 "); i++; } else if(price<guess) { printf("猜大了 "); i++; } else { i++; printf("你猜对了 "); printf("一共猜了%d ",i); break; } } if(i==10) { printf("正确价格为%d ",price); } } printf("游戏继续yes(Y)或no(N) "); scanf(" %c",&c); }while(c=='Y'||c=='y'); return 0; }
二、知识点总结(对顺序结构、选择结构、循环结构做综合总结)
选择结构:单分支if结构,用来做判断。
双分支一般指的是if...else结构。多分支一般指的是switch结构,多重的if...else也可以实现。
循环结构:一般有for,当型while,直到型do...while。
三、实验总结
break语句
(1)在循环语句和switch语句中,用break跳出循环
(2)break只能终止并跳出最近一层的结构
continue语句
(1)只能用于循环语句中,一般都与if语句一起使用
(2)只结束本次循环,跳过循环体中尚未执行的语句,进行下一次是否执行循环体的判断