C语言基础的小训练01

/*
//1.输入一个平头,判断奇偶,并出口“某某是奇数”或者“某某是偶数”
C语言,int a;
printf(“请输入一个数字:”);
scanf(“%d”,&a);

    if (a%2==0) {
        printf("%d是偶数",a);
    }
    else
        printf("%d是奇数",a);
     */
    //2.编程判断3人中谁的年龄最大,并打印最大者的年龄
    /**/
    int max=0;
    int a1=15,a2=28,a3=18,a,b,c;
      printf("请输入3个数字:");
    scanf("%d,%d,%d",&a,&b,&c);

    if (a1>a2 && a1>a3) {
        max=a1;
        printf("%d是最大的年龄",max);
    }
    else if (a2>a1 && a2>a3){
        max=a2;
        printf("%d是最大的年龄",max);
    }
    else
    {  max=a3;
        printf("%d是最大的年龄",max);}

   //3.在控制台输入年份,并且判断输入的年份是平年还是闰年。
    /*
    int y;
    printf("请输入一个年份:");
    scanf("%d",&y);
    if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
        printf("%d年是闰年",y);
    }
    else{
    printf("%d年是平年",y);
    }
    */
    //4.输入 3 个数,判断是否能构成三角形
    /*
    int a,b,c;
    printf("请输入三个数:");
    scanf("%d %d %d",&a,&b ,&c);
    if (a+b > c && a + c > b && b + c  > a && a > 0 && b > 0 && c > 0

) {
printf(“a=%d,b=%d,c=%d能结成三角形”,a,b,c);
}
else
printf(“不可能组成三角形”);
*/

    //5.铁路托运行李规定:行李重不超过 50 公斤的,托运费按 0.15 元每 公斤计算,如果超过 50 公斤,超出部分每公斤加收 0.1 元。编程实现上述功能
   /*
    float z,sum=0.0;
    printf("请输入公斤数:");
    scanf("%f",&z);
    if (z <= 50) {
        sum=0.15 * z;
        printf("共花费%f",sum);
    }
    else
    { sum=0.15 * 50 + (z - 50) * (0.1+0.15);
        printf("共花费%.2f",sum);

    }
    */
    //6.编程将所有“水仙花数”打印出来,并打印其总个数。
   /*
    int a,b,c;
    int sum=0;
    for (a =1; a<9; a++) {
        for (b =1; b<9; b++) {
            for (c =1; c<9; c++) {
                if ((a*a*a + b*b*b + c*c*c ) == (a*100+b*10+c)) {
                       sum++;
                    printf("水仙花数为%d\n",a*100+b*10+c);

                }

            }
        }
    }
    printf(" 总数为%d ",sum);
    */
    //7.输入两个数,求最大公约数和最小公倍数。
   /*
    int m,n,z = 0,q=0;

        printf("\n请输入两个数:");
        scanf("%d %d",&m,&n);
    q=m*n;
    //辗转相除法
    if (m<n) {
        while (m!= 0) {
            z = n % m;
            n = m;
            m = z;
        }
         printf("最大公约数为%d   最小公倍数为%d",n,q/n);
    }
    else{
    while (n!= 0) {
        z = m % n;
        m = n;
        n = z;
    }

    printf("最大公约数为%d   最小公倍数为%d",m,q/m);

}

//普通方法
    int xx,yy;
    printf("\n请输入两个数:");
    scanf("%d %d",&xx,&yy);
    int temp = xx < yy ? xx : yy;
    int  a = xx * yy;
    for (long i = temp; ; i--) {
        if ((xx % i == 0) && (yy % i == 0)) {
            temp = i;
            break;
        }
    }

    printf("这两个数的最大公约数为:%d\n",temp);
    printf("这两个数的最小公倍数为:%d\n",a/temp);

 */

}