第六次作业
1.有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的四位数。
#include <stdio.h> int main () { int x,a,b,c,d,y; for(x=1000;x<10000;x++) { a=x/1000; b=x/100%10; c=x/10%10; d=x%10; y=a+b*10+c*100+d*1000; if(a!=b&&a!=c&&a!=d&&b!=c&&b!=d&&c!=d&&x==(y*4)) { printf("这两个数分别是%d,%d",x,y); } } return 0; }
2.输入任意一个多位的数字,求各位数字之和。如果在【1,12】之内,则输出与和数字对应的月份的英文名称,否则输出***。
样例: 输入123, 输出 6 June
输入12345,输出 15 ***
#include<stdio.h> int main() { int n; int sum=0; printf("请输入一个数字:\n"); scanf("%d",&n); while(n) { sum+=n%10; n=n/10; } if(sum>=1&&sum<=12) { if(sum==1) printf("January\n"); else if(sum==2) printf("February\n"); else if(sum==3) printf("March\n"); else if(sum==4) printf("April\n"); else if(sum==5) printf("May\n"); else if(sum==6) printf("June\n"); else if(sum==7) printf("July\n"); else if(sum==8) printf("August\n"); else if(sum==9) printf("September\n"); else if(sum==10) printf("October\n"); else if(sum==11) printf("November\n"); else printf("December\n"); } else printf("***\n"); return 0; }
3.给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。
输入格式:输入在一行中给出A。
输出格式:输出满足条件的的3位数,要求从小到大,每行6个整数。整数间以空格分隔,但行末不能有多余空格。
输入样例:2
输出样例:234 235 243 245 253 254
324 325 342 345 352 354
423 425 432 435 452 453
523 524 532 534 542 543
#include<stdio.h> int main() { int n,i,j,k; printf("请输入一个不超过6的正整数:\n"); scanf("%d",&n); printf("\n"); for(i=n;i<n+4;i++) { for(j=n;j<n+4;j++) { for(k=n;k<n+4;k++) if(j!=i&&k!=j&&i!=k) printf("%d ",i*100+j*10+k); } printf("\n"); } return 0; }
4. 万年历、看商品猜价格、自动出题器、猜拳游戏。(完成个人选定的题目)
#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int i,a,b,c,d,e; char x; srand (time(NULL)); do { a=(rand()%100)+1; for(c=0;c<11;c++) { printf("请输入猜想价格"); scanf ("%d",&i); if(a>i) { printf("太小了,请重新输入"); } else if(a<i) { printf("太大了,请重新输入"); } else if(a==i) { printf("恭喜你,猜对了"); break; } } if (c>10) { printf("10次都没有猜对,这个数是%d",a); } printf("一共猜了%d次",c); printf("继续下一轮游戏吗?y or n"); scanf(" %c",&x); if (x=='y'||x=='Y') { printf("继续下一轮游戏"); } else { printf("游戏结束"); } }while (x=='y'||x=='Y'); return 0; }
知识点总结:熟练运用 for while do...while 三种循环
break语句结束整个循环过程
随机函数rand(),利用函数time()获得系统时间
实验总结 :符号注意中英文的转换
记住赋值
无限循环中,利用循环体中加
break
语句跳出循环
= 是赋值 ==是等于