首页 > 代码库 > 第六次作业
第六次作业
一,
实验要求:有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的四位数。
代码:
#include <stdio.h> int main() { long x,y,a,b,c,d; for(x=1000;x<10000;x=x+1) { a=x/1000; b=(x/100)-a*10; c=(x/10)-b*10-a*100; d=x%10; y=d*1000+a+b*10+c*100; if(x==4*y) { printf(" %d\n",x); } } return 0; }
程序运行结果:
二,
实验要求:
输入任意一个多位的数字,求各位数字之和。如果在【1,12】之内,则输出与和数字对应的月份的英文名称,否则输出***。
样例: 输入123, 输出 6 June
输入12345,输出 15 ***
代码:
#include<stdio.h> int main() { long x,y,z; z=0; printf("请输入一个多位数。\n"); scanf("%ld",&x); while(x>0) { y=x%10; x=x/10; z=z+y; } switch(z) { case 1:printf("January\n");break; case 2:printf("February\n");break; case 3:printf("March\n");break; case 4:printf("April\n");break; case 5:printf("May\n");break; case 6:printf("June\n");break; case 7:printf("July\n");break; case 8:printf("August\n");break; case 9:printf("September\n");break; case 10:printf("October\n");break; case 11:printf("November\n");break; case 12:printf("December\n");break; default:printf("***\n"); } return 0; }
程序运行结果:
三,
实验要求:
给定不超过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 a,b,c,d,sum,l=0; printf("请输入小于6整数\n"); scanf("%d",&a); if(a>6||a<1) { printf("输入错误\n"); } else { for(b=a;b<=(a+3);b++) for(c=a;c<=(a+3);c++) for(d=a;d<=(a+3);d++) if(b!=c&&b!=d&&d!=c) { sum=b*100+c*10+d*1; printf("%d ",sum); l=l+1; if(l%6==0) { printf("\n"); } } } return 0; }
程序运行结果:
四,
实验要求:猜拳游戏
代码:
#include <stdio.h> #include <stdlib.h> int main() { long a,b,p=0,y=0,s=0,chang=0; while(a!=0) { chang=chang+1; printf("******猜拳游戏******\n第%ld轮对决\n1是石头,2是剪刀,3是布\n",chang); scanf("%ld",&a); if(a>3&&a<1) { printf("输入错误\n"); continue; } else { b=rand()%100+1; if(b>=1&&b<=33) { if(a==1) { printf("你出石头,电脑出石头,平局\n"); p=p+1; } if(a==2) { printf("你出剪刀,电脑出石头,你输了\n"); s=s+1; } if(a==3) { printf("你出布,电脑出石头,你赢了\n"); y=y+1; } } else if(b>=34&&b<=66) { if(a==1) { printf("你出石头,电脑出剪刀,你赢了\n"); y=y+1; } if(a==2) { printf("你出剪刀,电脑出剪刀,平局\n"); p=p+1; } if(a==3) { printf("你出布,电脑出剪刀,你输了\n"); s=s+1; } } else { if(a==1) { printf("你出石头,电脑出布,你输了\n"); s=s+1; } if(a==2) { printf("你出剪刀,电脑出布,你赢了\n"); y=y+1; } if(a==3) { printf("你出布,电脑出布,平局\n"); p=p+1; } } } printf("要进行下一轮游戏吗??0为退出游戏,其他继续游戏\n"); scanf("%ld",&a); } printf("您已退出游戏,您共进行了%ld场游戏\n您赢了%ld场,电脑赢了%ld场,平局%ld场\n",chang,y,s,p); return 0; }
程序运行结果:
知识点总结:
1,利用int类型整数相除自动去除小数部分可以把多位数一位一位的拆开
2,可以用穷举法把相求的数求出
实验总结:
1,利用随机数让电脑自动出拳
第六次作业
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。