zoukankan      html  css  js  c++  java
  • 作业六

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

    #include<stdio.h>
    int main()
    {

      int a,b,c,d,e,f;

      for(a=1;a<=9;a++)

      for(b=0;b<=9;b++)

      for(c=0;c<=9;c++)
      for(d=1;d<=9;d++)
       {
         e=a*1000+b*100+c*10+d;
         f=d*1000+c*100+b*10+a;
         if(e==4*f&&a!=b&&b!=c&&c!=d&&a!=c&&a!=d&&b!=d)
           {
            printf("%d",e);
           }
       }
    return 0;
    }

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

      样例: 输入123,    输出 6     June

                输入12345,输出 15   ***

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

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

    看商品猜价格

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main()
    {
        int a,b,i;
        char c;
        do
        {     
            printf("请在1-100内输入价格
    ");
            scanf("%d",&a);
            srand(time(NULL));
            b=rand()%100+1;
            for(i=1;i<=10;i++)
                {
                    if(b>a)
                    {
                        printf("猜小了
    ");
                        scanf("%d",&a);
                        continue;
                    }
                    else if(b<a)
                    {
                        printf("猜大了
    ");
                        scanf("%d",&a);
                        continue;
                    }
                    else
                    {
                        printf("你猜对了");
                        printf("一共猜了%d次
    ",i);
                        break;
                    }
                }
            printf("正确答案是%d",b);
            printf("继续么?y or n
    ");
            scanf("%d",&c);
            }while(c=='y');
            return 0;
    }

    二、知识点总结

    1、continue只能跳出本次循环。

    2、用char c时,输出要用"%c"。

    3、使用穷举法时,用到了多个循环。

    三、实验总结

    1、for语句中表达式要用;号分开。

    2、do........while循环中while后要加;,while循环中while后不用加。

    3、字母和数字别忘了用''括起来。

    4、switch语句中要加break。

  • 相关阅读:
    opencv出现问题:/usr/lib/x86_64-linux-gnu/libpng16.so.16: undefined reference to `inflateValidate@ZLIB_1.2.9'
    SCI-HUB 解锁论文的正确姿势——如何免费下载论文
    VS2019 实现与 Linux服务器同步
    VS Code 写代码实时同步服务器【Sftp插件】
    Docker实用技巧(二):容器与主机之间复制文件
    Docker实用技巧(一):镜像的备份/保存/加载/删除
    mycat注解及高可用(三)
    mycat分片及主从(二)
    SVN中trunk,branches,tags用法详解
    寄存器的英文全称
  • 原文地址:https://www.cnblogs.com/1998li/p/6048310.html
Copyright © 2011-2022 走看看