第六次实验

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

#include<stdio.h>
int main()
{
    int i,a,b,c,d,j;
    for(i=1000;i<=10000;i++)
    {
        a=i/1000;
        b=(i/100)%10;
        c=(i%100)/10;
        d=i%10;
        if(a!=b&&b!=c&&c!=d)
        {
            j=d*1000+a+b*10+c*100;
        }
        if(i==j*4)
        {
            printf("%d",i);
        }
    }
    return 0;
}

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

#include<stdio.h>
int main()
{
    int i,j,sum;
    printf("请输入一个数");
    scanf("%d",&i);
    if(i<=9)
    {
        printf("sorry,data error");
    }
    else
    {
        while(i>0)
        {
        j=i;
        sum=sum+j%10;
        i=j/10; 
        }
    }
    if(sum<=12)
    {
        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("octember
");break;
             case 11 : printf("november
");break;
             case 12 : printf("december
");break;
        }    
    }
    else
    {
        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>
int main()
{
    int a,b,i,j,h,num; 
    printf("输入一个数:
");
    scanf("%d",&a);
    for(i=a;i<=(a+3);i++)
    {
        for(j=a;j<=(a+3);j++)
        {
            for(h=a;h<=(a+3);h++)
            {
                if(i!=j&&i!=h&&j!=h) 
                {
                    num=i*100+j*10+h;
                    printf("%d ",num);
                    b++;
                    if(b%6==0)
                    {
                        printf("
");
                    }
                }
               
            }
        }
    }
    return 0;
}

实验总结:1先建立数学模型,根据数学模型建立相应的c语言条件,选择好相应的语句,并且尝试不同语句的使用,尽量优化程序。

原文地址:https://www.cnblogs.com/xiongx/p/6058120.html