练习题:分支结构

分支结构练习题

第一道题

输入你的身高和体重,测试你的健康状况

计算bmi的值, bmi = (体重(kg)/⾝⾼(m)的平⽅) 如果bmi ⼩于18.5,则显⽰“偏瘦,注意加强营养” 如果bmi 在18.5和23.9之间,则显⽰“体重指数良好,注意保持” 如果bmi值⼤于23.9 ,则显⽰“你有点偏胖,注意锻炼”

代码:

#include <stdio.h>

int main() 
{
    //定义三个变量:体重,身高,健康指数
    float weight, height, bmi;

    // 提示用户输入体重和身高
    printf("请输入体重(kg):\n");
    scanf("%f", &weight);
    printf("请输入身高(m):\n");
    scanf("%f", &height);

    // 计算BMI值
    bmi = weight / (height * height);

    // 根据BMI值给出建议
    if (bmi < 18.5) 
    {
        printf("偏瘦,注意加强营养\n");
    } 
    else if (bmi >= 18.5 && bmi <= 23.9) 
    {
        printf("体重指数良好,注意保持\n");
    } 
    else 
    {
        printf("你有点偏胖,注意锻炼\n");
    }
    printf("你的健康指数是%.2f\n",bmi);
    return 0;
}

运行结果:

在这里插入图片描述

第二道题

西安市对安装“⼀⼾⼀表”的居⺠⽤⼾按阶梯式累进电价进⾏计收电费,具体⽅案是:

⽉⽤电量低于50千⽡时部分,电价不调整,仍为0.538元/千⽡时;51〜200千⽡时部分, 单价为0.568元/千⽡时;超过200千⽡时部分,电价为0.638元/千⽡时。市区徐某家4⽉份 的⽤电量为96千⽡时,其电费计算:
如下:基本电费部分:96千⽡时×0.538元/千⽡时=51.65元; 超出50千⽡时的调价电费:(96〜50)千⽡时×0.03元/千⽡时=1.38元;电费合计51.65+1.38=53.03元 。 “阶梯式电价”机制可有效地抑制电⼒浪费现象,引导居⺠节约⽤电,合理⽤电,⽐纯粹“⼝号倡导型” 节约⽤电更加有效。 编写⼀个程序根据输⼊的⽤电量,计算电费。

代码:

#include <stdio.h>

int main(int argc,char *argv[])
{
    //  定义两个变量,用电量,电费
    double sum,bill;
    printf("请输入你的用电量:\n");
    scanf("%lf",&sum);

    // 当用电量超过50不超过200千瓦时的用电费用
    if(sum >50 && sum < 200)
    {
      bill = 50 * 0.538 + (sum - 50) * 0.568;
      printf("你的电费是:%.2lf\n",bill);
    }
    // 当用电量超过或等于200千瓦时的用电费用
    else if(sum >= 200)
    {
      bill = 50 * 0.538 + 150 * 0.568 + (sum - 200) * 0.638;
      printf("你的电费是:%.2lf\n",bill);
    }
    // 当用电量不超过50千瓦时的用电费用
    else if(sum <= 50)
    {
      bill = sum * 0.538;
      printf("你的电费是:%.2lf\n",bill);
    }
    return 0;
}

运行结果

在这里插入图片描述

第四道题

出租⻋费计算程序,起步公⾥数3公⾥,⻋费8元,超出3公⾥,每公⾥1.8元,不⾜⼀公⾥,按照1公⾥计算。 如果输⼊⼀个钱数,计算最多能坐多少公⾥,该如何实现?

代码:

#include <stdio.h>

int main(int argc,char *argv[])
{
    // 定义三个变量,公里数,钱数,起步价
    int k,m;
    int s = 8;

    printf("请输入您付的钱数:\n");
    scanf("%d",&m);

    // 当付的钱数小于起步价时,无法乘坐出租车
    if (m < s)
    {
        printf("钱数不够,无法乘车!\n");
    }
    else if(m == s)
    {
        printf("您可以乘坐3公里!\n");
    }
    else if(m > s)
    {
        int k = (m - s)/ 1.8 + 3;
        printf("您最多乘坐的公里数是:%d\n",k);
    }
    return 0;
}

运行结果

在这里插入图片描述

第七道题

实现⼀个简单的计算器,要求根据输⼊的运算符实现相应的运算。(scanf()输⼊有误,在其前或者后增加getchar())

代码:

#include <stdio.h>

int main()
{
    double num1, num2, result;
    char operator;

    // 输入第一个数
    printf("请输入第一个数: \n");
    scanf("%lf", &num1);

    // 输入运算符
    printf("请输入运算符 (+ - * /): \n");
    scanf(" %c", &operator); // 读取运算符,空格忽略前导空白

    // 输入第二个数
    printf("请输入第二个数: \n");
    scanf("%lf", &num2);

    // 根据运算符执行相应的运算
    switch (operator)
    {
    case '+':
        result = num1 + num2;
        break;
    case '-':
        result = num1 - num2;
        break;
    case '*':
        result = num1 * num2;
        break;
    case '/':
        if (num2 != 0)
        {
            result = num1 / num2;
        }
        else
        {
            printf("除数不能为0,请重新输入第二个数: \n");
            scanf("%lf", &num2);
            result = num1 / num2;
        }
        break;
    }

    // 输出结果
    printf("运算结果是: %.2lf\n", result);

    return 0; // 返回零表示程序正常结束
}

运行结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值