博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第六次作业
阅读量:6272 次
发布时间:2019-06-22

本文共 5794 字,大约阅读时间需要 19 分钟。

1.有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的四位数。

#include
int main(){ int a,b,c,d,x,y,i; for(i=1000;i<=9999;i++) { a=i/1000; b=i%1000/100; c=i%1000%100/10; d=i%10; if(a==b||a==c||a==d||b==c||b==d||c==d) { continue; } else { x=a; a=d; d=x; x=b; b=c; c=x; y=a*1000+b*100+c*10+d; if(i==4*y) { printf("%d\n",i); } } } return 0;}

2.输入任意一个多位的数字,求各位数字之和。如果在【1,12】之内,则输出与和数字对应的月份的英文名称,否则输出***。

  样例: 输入123,    输出 6     June

            输入12345,输出 15   ***

#include
int main(){ int i,a,sum=0; printf("输入任意一个多位的数字"); scanf("%d",&i); while(1) { if(i<10&&i>0) { sum=sum+i; break; } a=i%10; sum=sum+a; i=i/10; if(i<10&&i>0) { sum=sum+i; break; } } switch(sum) { case 12:printf("%d December\n",sum);break; case 11:printf("%d November\n",sum);break; case 10:printf("%d October\n",sum);break; case 9:printf("%d September\n",sum);break; case 8:printf("%d August\n",sum);break; case 7:printf("%d July\n",sum);break; case 6:printf("%d June\n",sum);break; case 5:printf("%d May\n",sum);break; case 4:printf("%d April\n",sum);break; case 3:printf("%d March\n",sum);break; case 2:printf("%d February\n",sum);break; case 1:printf("%d January\n",sum);break; default: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
int main(){ int a,b,c,d,i=0,sum=0; printf("输入一个不超过6的正整数A\n"); scanf("%d",&a); b=a; while(b<=a+3) { c=a; while(c<=a+3) { d=a; while(d<=a+3) { if(b!=c&&b!=d&&c!=d) { sum=b*100+c*10+d; printf("%3d",sum); i++; if(i!=6) printf(" "); if(i==6) { printf("\n"); i=0; } } sum=0; d++; } c++; } b++; } return 0;}

 

4. 万年历、看商品猜价格、自动出题器、猜拳游戏。(完成个人选定的题目)

#include
#include
#include
int main(){ int a,b,yu,zy,result,answer,d,i=0,y=0,x=0,m=0; float lu,zonglu; char op,yn; srand(time(NULL)); while(i<=5) { a=rand()%100; b=rand()%100; d=rand()%4+1; switch(d) { case 1:op='+';result=a+b;break; case 2:op='-';result=a-b;break; case 3:op='*';result=a*b;break; case 4:op='/';result=a/b;zy=a%b;break; } if(d==4) { printf("%d%c%d=?\n",a,op,b); printf("请输入商和余数,用空格分开\n"); scanf("%d %d",&answer,&yu); if(answer==result&&yu==zy) { printf("回答正确\n"); y++; x++; m++; } else { printf("回答错误,正确的答案是%d %d\n",result,zy); x++; } } else { printf("%d%c%d=?\n",a,op,b); printf("请输入答案\n"); scanf("%d",&answer); if(answer==result) { printf("回答正确\n"); y++; x++; m++; } else { printf("回答错误,正确的答案是%d\n",result); x++; } } i++; if(i==5) { lu=m/5.0; printf("这次做对了%d道题,正确率为%.2f%%",m,lu*100); printf("继续吗? Y or N\n"); scanf(" %c",&yn); if(yn=='n') { zonglu=(float)y/x; printf("一共做了%d道题,做对了%d道题,正确率是%.2f%%",x,y,zonglu*100); break; } if(yn=='y') { i=0; m=0; } } } return 0;}

附加题

  有16根火柴,可以拼出多少个形如“A+B=C”的等式,A、B、C是用火柴棍拼出的整数,且为一位数,输出该等式形式。

 注意:  1. 加号与等号各自需要两根火柴棍    2. 如果A≠B,则A+B=C与B+A=C视为不同的等式(A、B、C>=0) 3. 16根火柴棍必须全部用上

  用火柴棍拼数字0-9的拼法如图所示: 

              

 

#include
int main(){ int a,b,c,x,y,z; for(a=0;a<=9;a++) { for(b=0;b<=9;b++) { switch(a) { case 0:x=6;break; case 1:x=2;break; case 2:x=5;break; case 3:x=5;break; case 4:x=4;break; case 5:x=5;break; case 6:x=6;break; case 7:x=3;break; case 8:x=7;break; case 9:x=6;break; } switch(b) { case 0:y=6;break; case 1:y=2;break; case 2:y=5;break; case 3:y=5;break; case 4:y=4;break; case 5:y=5;break; case 6:y=6;break; case 7:y=3;break; case 8:y=7;break; case 9:y=6;break; } c=a+b; switch(c) { case 0:z=6;break; case 1:z=2;break; case 2:z=5;break; case 3:z=5;break; case 4:z=4;break; case 5:z=5;break; case 6:z=6;break; case 7:z=3;break; case 8:z=7;break; case 9:z=6;break; } if(x+y+z==12&&x!=y) { printf("%d+%d=%d\n",a,b,c); } } } return 0;}

 

 

 

实验总结:1.注意switch语句的使用,case后加 break

2.赋值是一个=     等于是两个==

3.利用时间产生随机数,注意多重嵌套的关系

4.交换数值用第三变量

知识点总结:1.对一个数去掉最后一位用/10,得到最后一位用%10

2.输入一串字符的经典用法:while((ch=getchar())!='\n')

3.无限循环中,利用循环体中加break语句跳出循环

转载于:https://www.cnblogs.com/wjm666/p/6052806.html

你可能感兴趣的文章
Ucenter 会员同步登录通讯原理
查看>>
php--------获取当前时间、时间戳
查看>>
Spring MVC中文文档翻译发布
查看>>
docker centos环境部署tomcat
查看>>
JavaScript 基础(九): 条件 语句
查看>>
Linux系统固定IP配置
查看>>
配置Quartz
查看>>
Linux 线程实现机制分析
查看>>
继承自ActionBarActivity的activity的activity theme问题
查看>>
设计模式01:简单工厂模式
查看>>
项目经理笔记一
查看>>
Hibernate一对一外键双向关联
查看>>
mac pro 入手,php环境配置总结
查看>>
MyBatis-Plus | 最简单的查询操作教程(Lambda)
查看>>
rpmfusion 的国内大学 NEU 源配置
查看>>
spring jpa 配置详解
查看>>
IOE,为什么去IOE?
查看>>
java 用反射简单应用,将Object简单转换成map
查看>>
Storm中的Worker
查看>>
dangdang.ddframe.job中页面修改表达式后进行检查
查看>>