8月29第1题

#include <stdio.h>
#include <string.h>
#include <math.h>
int main(int argc, const char *argv[])
{
    // 2023-8-29 练习第1题
    // 某服装店进行促销活动,一件上衣原价90元,裤子原价45元,现一套120元。
    // 如果我买m套上衣和n套裤子,最少花费多少钱?
    printf("\n");                        // 第1题开头空1行,看起来舒服一些
    printf("第1题************************************************\n");

    int a1,a2,a3;                        // 定义一些整形变量

    a1=0,a2=0,a3=0;                      // 初始化数据

    printf("请输入购买数量\n");          // 提示输入购买数量

    scanf("%d %d", &a1, &a2 );           // a1=买上衣变量,a2=买裤子变量

    if (a1 == a2)                        // 判断购买上衣和裤子数量是否相等
    {
        a3=a1*120;                       // 相等的情况下,选择上衣或者裤子的购买数量*整套的价格
    }

    else                                 // 购买的上衣和裤子不相等
    {
        if(a1>a2)                        // 上衣数量大于裤子数量
        {
            a3=((a1-a2)*90)+(a2*120);    // 裤子数量用来购买整套,上衣-裤子数量=还需购买数量,然后*上衣价格90元,最后算出整套+上衣之和
        }
        if(a1<a2)                        // 上衣数量小于裤子数量
        {
            a3=((a2-a1)*45)+(a1*120);    // 上衣数量用来购买整套,裤子-上衣数量=还需购买数量,然后*裤子价格45元,最后算出整套+裤子之和
        }
    }
    printf("你需要花费 = %d\n",a3);      // 打印你要花费的金额

    // 2023-8-29 练习第2题
    //终端输入三角形的三条边,判断是否可以组成三角形,能的话,是等腰三角形,还是等边三角形、或普通三角形
    printf("\n");                        // 与上一题空1行,看起来舒服一些
    printf("第2题************************************************\n"); 
    printf("请输入3条边长\n"); 

    float b1,b2,b3;                                                       // 定义3个浮点数,用于3条边

    b1=0.0,b2=0.0,b2=0.0;                                                 // 初始化3条边的数据

    scanf("%f %f %f", &b1, &b2, &b3 );                                    // 输入3条边长

    if (b1+b2>b3  && b1+b3>b2  && b2+b3>b1)                               // 判断能否组成三角形
    {
        if((b1==b2) && (b2==b3) && (b1==b3))                              // 判断3条边相等
            printf("组成等边三角行了\n");                                 // 打印组成等边三角形

        else if((b1==b2)||(b2==b3)||(b1==b3))                             // 判断2条边相等,另一条边不等
            printf("组成等腰三角行了\n");                                 // 打印组成等腰三角形
        else
            printf("组成普通三角行了\n");                                 // 打印能组成普通三角形
    }
    else                                                                  // 不能组成三角形
    {
        printf("不能组成三角行\n");                                       // 打印不能组成三角形
    }

    // 2023-8-29 练习第3题
    //终端输入一个数,判断是一、二、三位数
    //如果是一位数的话,判断奇偶
    //如果是二位数的话,判断个位能不能被十位整除
    //如果是三位数的话,判断个的三次方+十的三次方+百的三次方 = 本身。(水仙花数)
    printf("\n");                        // 与上一题空1行,看起来舒服一些
    printf("第3题************************************************\n"); 
    printf("请输入1~3位数\n"); 
    int c1,c2,c3,c4,c5,c6,c7,c8;               // 定义一些变量
    c1=0,c2=0,c3=0,c4=0,c5=0,c6=0,c7=0,c8=0;   // 数据初始化
    scanf("%d", &c1 );                         // 终端输入数据
    if(c1>0 && c1<=9)                          // 判断是否1位数
    {
        c2=1;                                  // =1位数
        if(c1%2==0)                            // 判断没有余数
        {
            printf("是偶数\n");                // 没余数打印是偶数

        }
        else 
        {
            printf("是奇数\n");                // 否则打印是奇数
        }
    }


    if(c1>=10 && c1<=99)                       // 判断是否2位数
    {
        c2=2;                                  // =2位数
        c3=c1/1%10;                            // 取个位数
        c4=c1/10%10;                           // 取十位数
        printf("个位数显示=%d\n", c3);         // 打印取出的个位数
        printf("十位数显示=%d\n", c4);         // 打印取出的十位数
        if(c3%c4 == 0)
        {
            printf("能整除\n");                // 打印能整除
        }
        else 
        {
            printf("不能整除\n");              // 打印能整除
         } 
    }


if(c1>=100 && c1<=999)                             // 判断是否3位数
{
        c2=3;                                      // =3位数
        c5 = c1/100;                               // 取出百位数
        c6 = c1/10%10;                             // 取出十位数
        c7 = c1/1%10;                              // 取出个位数                                                             
        printf("百=%d\n",c5);                      // 打印百位数
        printf("十=%d\n",c6);                      // 打印十位数
        printf("个=%d\n",c7);                      // 打印个位数
        c8=pow(c5,3)+pow(c6,3)+pow(c7,3);          // 计算3个数的次方之和
        printf("PPDI=%d\n",c8);                    // 打印计算之和
        if (c8== c1)                               // 判断2个数是否相等
        {
            printf("是水仙花数\n");                // 相等打印是水仙花数
        }
        else
        {
            printf("不是水仙花数\n");              // 不等打印非水仙花数
        }
}


    printf("数据位数显示=%d\n", c2);

    return 0;
}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值