东方 - 分支(2) - 多分支

解析部分:

多分支

1304. 冷饮的价格(2)

问题描述

根据小明购买冰棍的数量,计算应付的价格,其中价格根据购买数量有不同的单价。

解题思路

计算应付价格的步骤如下:

  1. 根据购买的冰棍数量,确定对应的单价。
  2. 使用确定的单价乘以购买数量,得到总价格。
  3. 输出总价格,保留1位小数。
代码实现
#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    int n; // 定义变量存储购买的冰棍数量
    cin >> n; // 从标准输入读取冰棍数量

    double price; // 定义变量存储总价格
    // 根据购买数量确定单价
    if (n >= 30) {
        price = n * 1.0;
    } else if (n >= 20) {
        price = n * 1.2;
    } else if (n >= 10) {
        price = n * 1.5;
    } else {
        price = n * 1.8;
    }

    // 输出应付金额,保留一位小数
    cout << fixed << setprecision(1) << price << endl;

    return 0; // 程序结束
}
代码解析
  • int n; 定义一个整型变量n来存储用户输入的购买冰棍的数量。
  • cin >> n; 使用cin从标准输入读取购买数量。
  • double price; 定义一个双精度浮点数变量price来计算应付的总价格。
  • 使用if-else结构根据购买的冰棍数量选择合适的单价进行计算。
  • cout << fixed << setprecision(1) << price << endl; 使用cout输出总价格,并通过fixedsetprecision(1)确保结果保留一位小数。

通过这种方法,可以根据小明购买冰棍的数量准确计算出应付的总价格,并按要求输出。

1044. 找出最经济型的包装箱型号

问题描述

根据货物的重量选择最合适的包装箱型号,以确保材料使用最经济。

解题思路

通过判断货物的重量落在哪个重量区间,选择相应的包装箱型号:

  • 小于10公斤使用A型。
  • 大于等于10公斤且小于20公斤使用B型。
  • 大于等于20公斤且小于40公斤使用C型。
  • 大于等于40公斤且小于50公斤使用D型。
  • 大于等于50公斤且小于80公斤使用E型。
代码实现
#include <iostream>
using namespace std;

int main() {
    int weight; // 定义变量存储货物的重量
    cin >> weight; // 从标准输入读取货物重量

    char type; // 定义变量存储包装箱型号
    // 判断货物重量选择包装箱型号
    if (weight < 10) {
        type = 'A';
    } else if (weight < 20) {
        type = 'B';
    } else if (weight < 40) {
        type = 'C';
    } else if (weight < 50) {
        type = 'D';
    } else if (weight < 80) {
        type = 'E';
    }

    // 输出最经济型的包装箱型号
    cout << type << endl;

    return 0; // 程序结束
}
代码解析
  • int weight; 定义一个整型变量weight来存储用户输入的货物重量。
  • cin >> weight; 使用cin从标准输入读取货物重量。
  • char type; 定义一个字符变量type来存储选择的包装箱型号。
  • 使用一系列if-else语句根据货物的重量判断并选择最合适的包装箱型号。
  • cout << type << endl; 使用cout输出选择的包装箱型号,并确保输出后有一个回车符号。

这样,可以根据货物的重量准确地选择最经济型的包装箱型号,并按要求输出。

1039. 求三个数的最大数

问题描述

给定三个不相等的整数,需要找出并输出这三个数中的最大数。

解题思路

要找出三个数中的最大数,我们可以通过比较这三个数来实现:

  1. 首先比较前两个数,找出较大的那个。
  2. 然后将这个较大的数与第三个数比较,找出最大的那个数。
  3. 输出这个最大的数。
代码实现
#include <iostream>
using namespace std;

int main() {
    int a, b, c; // 定义变量存储三个整数
    cin >> a >> b >> c; // 从标准输入读取这三个整数

    int maxNumber; // 定义变量存储最大的数
    // 通过比较找出最大的数
    maxNumber = a > b ? a : b;
    maxNumber = maxNumber > c ? maxNumber : c;

    // 输出最大的数
    cout << maxNumber << endl;

    return 0; // 程序结束
}
代码解析
  • int a, b, c; 定义三个整型变量abc来存储用户输入的三个整数。
  • cin >> a >> b >> c; 使用cin从标准输入读取这三个整数。
  • int maxNumber; 定义一个整型变量maxNumber来存储最大的数。
  • 使用条件运算符(? :)先比较ab得到较大的数,然后将这个较大的数与c比较,最终找出最大的数。
  • cout << maxNumber << endl; 使用cout输出最大的数,并在输出后添加一个回车符号。

这种方法可以准确地找出三个数中的最大数,并按要求输出。

1035. 判断成绩等级

问题描述

根据输入的学生成绩,将其分为三个等级:86分以上(包括86分)为VERY GOOD,60到85分(包括60和85分)为GOOD,小于60分为BAD。

解题思路

根据成绩的不同范围,使用条件判断语句输出相应的成绩等级:

  1. 成绩大于等于86分输出VERY GOOD。
  2. 成绩在60到85分之间(包含边界值)输出GOOD。
  3. 成绩小于60分输出BAD。
代码实现
#include <iostream>
using namespace std;

int main() {
    int score; // 定义变量存储学生成绩
    cin >> score; // 从标准输入读取成绩

    // 判断成绩等级并输出结果
    if (score >= 86) {
        cout << "VERY GOOD" << endl;
    } else if (score >= 60) {
        cout << "GOOD" << endl;
    } else {
        cout << "BAD" << endl;
    }

    return 0; // 程序结束
}
代码解析
  • int score; 定义一个整型变量score来存储用户输入的学生成绩。
  • cin >> score; 使用cin从标准输入读取学生成绩。
  • 使用if-else语句根据成绩的具体值判断并输出相应的等级。
    • 如果成绩大于等于86分,则输出VERY GOOD。
    • 如果成绩在60到85分之间,则输出GOOD。
    • 如果成绩小于60分,则输出BAD。

通过这种方法,可以准确地根据学生成绩输出其等级,并满足题目的要求。

1300. 小明暑假的零花钱

问题描述

基于小明的考试成绩来计算他暑假的零花钱,成绩与零花钱之间有明确的对应关系。

解题思路

根据小明的考试成绩,使用条件判断来计算他应得的零花钱金额。不同的成绩区间对应不同的计算规则。

代码实现
#include <iostream>
using namespace std;

int main() {
    int score; // 定义变量存储小明的考试成绩
    cin >> score; // 从标准输入读取小明的考试成绩

    int pocketMoney; // 定义变量存储小明的零花钱金额

    // 根据考试成绩计算零花钱
    if (score >= 90) {
        pocketMoney = score * 3; // 90分以上,零花钱是成绩的3倍
    } else if (score >= 80) {
        pocketMoney = score * 2; // 80到89分,零花钱是成绩的2倍
    } else if (score >= 70) {
        pocketMoney = score; // 70到79分,零花钱等于成绩分数
    } else {
        pocketMoney = 50; // 69分以下,零花钱固定为50元
    }

    // 输出小明暑假的零花钱金额
    cout << pocketMoney << endl;

    return 0; // 程序结束
}
代码解析
  • 使用int score;定义一个整型变量score来存储小明的考试成绩。
  • 使用cin >> score;从标准输入读取小明的考试成绩。
  • 使用int pocketMoney;定义一个整型变量pocketMoney来存储计算出的零花钱金额。
  • 通过一系列的if-else条件判断结构,根据小明的考试成绩决定其零花钱的计算方式。
  • 使用cout << pocketMoney << endl;输出计算出的小明暑假的零花钱金额。

通过这种方式,可以根据小明的考试成绩准确地计算出他在不同成绩区间下应得的零花钱金额,并按要求输出。

1322. 求数的量级?

问题描述

给定一个大整数n(10000 <= n <= 9999999999),需判断该数的量级并输出对应的量级拼音。

解题思路

量级判断依据整数(n)的长度(位数):

  • 5位数为"万"(wan)。
  • 6位数为"十万"(shi wan)。
  • 7位数为"百万"(bai wan)。
  • 8位数为"千万"(qian wan)。
  • 9位数为"亿"(yi)。
  • 10位数为"十亿"(shi yi)。
代码实现
#include <iostream>
#include <string>
using namespace std;

int main() {
    long long n; // 使用long long类型以支持大整数
    cin >> n;

    int length = to_string(n).length(); // 将数字转换为字符串并获取长度

    switch (length) {
        case 5: cout << "wan"; break;
        case 6: cout << "shi wan"; break;
        case 7: cout << "bai wan"; break;
        case 8: cout << "qian wan"; break;
        case 9: cout << "yi"; break;
        case 10: cout << "shi yi"; break;
    }

    return 0;
}
代码解析
  • 将输入的整数(n)转换为字符串,这样便于获取其长度。
  • 根据字符串的长度,使用switch语句判断并输出对应的量级拼音。

这种方法能够有效地根据给定的整数大小判断并输出其量级。

1049. 汉译英

问题描述

给定一个整数(n),如果这个整数在1到9的范围内,需要输出与之对应的英文单词;如果不在这个范围内,输出out

解题思路

可以通过判断语句来实现,对于每一个在1到9之间的数字,输出相应的英文单词。

代码实现
#include <iostream>
using namespace std;

int main() {
    int n; // 定义变量存储输入的整数
    cin >> n; // 从标准输入读取整数

    // 根据输入的整数输出对应的英文单词或out
    switch (n) {
        case 1: cout << "one"; break;
        case 2: cout << "two"; break;
        case 3: cout << "three"; break;
        case 4: cout << "four"; break;
        case 5: cout << "five"; break;
        case 6: cout << "six"; break;
        case 7: cout << "seven"; break;
        case 8: cout << "eight"; break;
        case 9: cout << "nine"; break;
        default: cout << "out"; break;
    }

    return 0; // 程序结束
}
代码解析
  • int n; 定义一个整型变量n来存储用户输入的整数。
  • cin >> n; 使用cin从标准输入读取这个整数。
  • 使用switch语句根据输入的整数n选择输出对应的英文单词。如果n在1到9之间,输出相应的英文单词;否则,输出out

这种方法可以准确地根据输入的整数在1到9之间输出对应的英文单词,或者输出out以表示输入的整数不在这个范围内。

1391. 公交卡充值问题

问题描述

根据小明充值的金额,按照公交充值中心的优惠活动计算实际到账的金额。

解题思路

根据充值金额的不同区间,决定赠送的额度,最后将充值金额与赠送金额相加得到实际到账金额。

代码实现
#include <iostream>
using namespace std;

int main() {
    int n; // 定义变量存储小明的充值金额
    cin >> n; // 从标准输入读取充值金额

    int gift = 0; // 定义变量存储赠送的金额
    if (n >= 500) {
        gift = 200; // 充值500元及以上,赠送200元
    } else if (n >= 300) {
        gift = 100; // 充值300元∼499元,赠送100元
    } else if (n >= 200) {
        gift = 50;  // 充值200元∼299元,赠送50元
    } // 充值200元以下没有赠送活动,gift保持为0

    int total = n + gift; // 计算实际到账的金额

    cout << total << endl; // 输出实际到账的金额

    return 0; // 程序结束
}
代码解析
  • int n; 定义一个整型变量n来存储用户输入的充值金额。
  • cin >> n; 使用cin从标准输入读取充值金额。
  • 根据充值金额的区间,使用if-else语句分支来确定赠送金额gift
  • 计算实际到账金额total为充值金额n加上赠送金额gift
  • cout << total << endl; 输出实际到账金额。

这种方法能够根据充值金额准确计算并输出实际到账的金额。

1668. 运动会成绩统计

问题描述

根据运动会跳水比赛的成绩,判断选手获得的奖牌类别。

解题思路

选手的成绩需要与金牌、银牌和铜牌的分数线进行比较,以确定获得的奖项类别。

代码实现
#include <iostream>
using namespace std;

int main() {
    double score; // 定义变量存储选手的分数
    cin >> score; // 从标准输入读取选手的分数

    // 根据分数判断获奖情况
    if (score >= 92.8) {
        cout << "jin" << endl; // 金牌
    } else if (score >= 85.6) {
        cout << "yin" << endl; // 银牌
    } else if (score >= 82.1) {
        cout << "tong" << endl; // 铜牌
    } else {
        cout << "sorry" << endl; // 未获奖
    }

    return 0; // 程序结束
}
代码解析
  • double score; 定义一个双精度浮点数变量score来存储选手的成绩。
  • cin >> score; 使用cin从标准输入读取选手的成绩。
  • 使用一系列if-else语句根据选手的成绩与奖牌的分数线进行比较,并输出相应的奖项类别。
  • 根据成绩输出jinyintongsorry,分别表示金牌、银牌、铜牌和未获奖。

这样,程序能够根据选手的成绩准确判断并输出选手应获得的奖项类别。

1669. 上什么课

问题描述

根据输入的星期数,确定晶晶今天应该上的课程。

解题思路

根据提供的信息,可以使用switch语句或if-else语句来判断今天是星期几,并根据星期几输出晶晶应该上的课程。

代码实现
#include <iostream>
using namespace std;

int main() {
    int day; // 定义变量存储星期数
    cin >> day; // 从标准输入读取星期数

    // 根据星期数判断应该上的课程
    switch(day) {
        case 1: cout << "swim" << endl; break; // 周一游泳
        case 3: cout << "program" << endl; break; // 周三编程
        case 5: cout << "read" << endl; break; // 周五阅读
        case 6: cout << "math" << endl; break; // 周六数学
        default: cout << "rest" << endl; break; // 其余时间没课
    }

    return 0; // 程序结束
}
代码解析
  • int day; 定义一个整型变量day来存储今天是星期几。
  • cin >> day; 使用cin从标准输入读取今天是星期几。
  • 使用switch语句根据输入的星期数day输出晶晶今天应该上的课程。case分支分别对应周一到周日,根据不同的星期数输出不同的课程名称,没有对应课程的星期输出rest表示休息。

这种方法可以准确地根据输入的星期数判断晶晶今天应该上的课程,并按要求输出。

1670. 象棋大赛

问题描述

根据选手的年龄,将其分配到相应的组别:青年组(15至30岁)、少年组(11至14岁)和儿童组(8至10岁)。

解题思路

通过判断选手的年龄所在的范围,可以确定选手的分组。

代码实现
#include <iostream>
using namespace std;

int main() {
    int age; // 定义变量存储选手的年龄
    cin >> age; // 从标准输入读取选手的年龄

    // 根据年龄判断分组
    if (age >= 15 && age <= 30) {
        cout << "qingnianzu" << endl; // 青年组
    } else if (age >= 11 && age <= 14) {
        cout << "shaonianzu" << endl; // 少年组
    } else if (age >= 8 && age <= 10) {
        cout << "ertongzu" << endl; // 儿童组
    }

    return 0; // 程序结束
}
代码解析
  • int age; 定义一个整型变量age来存储选手的年龄。
  • cin >> age; 使用cin从标准输入读取选手的年龄。
  • 通过if-else语句根据选手的年龄范围判断其所属的分组,并输出相应的组别名称。

这种方法可以根据选手的年龄准确地分配到相应的组别,并按要求输出组别名称。

1667. 最大数和最小数的差

问题描述

给定一个三位正整数,求出其个位、十位、百位数字中最大数和最小数的差值。

解题思路
  1. 将三位数分解为个位、十位、百位。
  2. 找出这三个数字中的最大值和最小值。
  3. 计算最大值和最小值的差。
代码实现
#include <iostream>
using namespace std;

int main() {
    int n; // 存储输入的三位数
    cin >> n;

    int hundred = n / 100; // 百位
    int ten = (n / 10) % 10; // 十位
    int one = n % 10; // 个位

    // 找最大值和最小值
    int maxDigit = max(hundred, max(ten, one));
    int minDigit = min(hundred, min(ten, one));

    // 计算差值
    int difference = maxDigit - minDigit;

    cout << difference << endl; // 输出差值

    return 0; // 程序结束
}
代码解析
  • 将输入的三位数n分解为个位、十位和百位。
  • 使用max函数和min函数找出三个数字中的最大值和最小值。
  • 计算这两个值的差,即为所求的最大数和最小数的差值。
  • 输出这个差值。

抱歉,让我们回到你指定的格式。

1305. 求四个数的最大数

问题描述

给定四个不相等的整数,需要找到并输出这些数中的最大值。

解题思路
  1. 读入数据:首先,我们需要从标准输入读入四个整数。
  2. 比较大小:然后,通过比较这四个数,找出其中的最大值。
  3. 输出结果:最后,输出这四个数中的最大值。
代码实现
#include <iostream>
using namespace std;

int main() {
    int a, b, c, d; // 定义四个整型变量 a, b, c, d 来存储用户输入的四个数
    cin >> a >> b >> c >> d; // 通过标准输入读取这四个数

    int max = a; // 假设 a 是最大的数
    if (b > max) max = b; // 如果 b 大于当前的最大值,更新最大值为 b
    if (c > max) max = c; // 如果 c 大于当前的最大值,更新最大值为 c
    if (d > max) max = d; // 如果 d 大于当前的最大值,更新最大值为 d

    cout << max << endl; // 输出最大值

    return 0; // 程序正常结束
}
代码解析
  1. 定义四个整型变量a, b, c, d来存储用户输入的四个整数。
  2. 使用cin从标准输入读取这四个整数。
  3. 通过一系列的比较操作,找到这四个数中的最大值,并将其存储在变量max中。
  4. 使用cout输出找到的最大值。

1310. 至少要买几瓶止咳糖浆?

问题描述

花花生病需要服用止咳糖浆,根据年龄和服用规格,计算至少需要购买的止咳糖浆瓶数。

解题思路
  1. 读入数据:首先,从标准输入读取花花的年龄。
  2. 计算每日所需糖浆量:根据花花的年龄判断每日所需的止咳糖浆量。
  3. 计算总所需糖浆量:花花痊愈需要5天,计算5天总共需要的糖浆量。
  4. 计算瓶数:每瓶糖浆120毫升,计算至少需要的瓶数。
  5. 输出结果:输出最少需要购买的止咳糖浆瓶数。
代码实现
#include <iostream>
using namespace std;

int main() {
    int age; // 存储花花的年龄
    cin >> age; // 读取花花的年龄

    int dose; // 每次服用的剂量
    if (age > 10) {
        dose = 25;
    } else if (age >= 7) {
        dose = 15;
    } else if (age >= 3) {
        dose = 5;
    } else {
        // 年龄低于3岁的情况
        dose = 0;
    }

    int totalDose = dose * 3 * 5; // 计算5天总共需要的糖浆量
    int bottles = (totalDose + 119) / 120; // 计算所需的瓶数,向上取整

    cout << bottles << endl; // 输出最少需要的止咳糖浆瓶数

    return 0;
}
代码解析
  • 根据花花的年龄确定每次服用的剂量。
  • 计算5天内总共需要服用的糖浆量。
  • 由于每瓶糖浆是120毫升,通过计算确定至少需要的止咳糖浆瓶数,并向上取整。
  • 输出所需的止咳糖浆瓶数。

1464. 晶晶的补习班

问题描述

晶晶每天需要上补习班,她想知道下周每天平均要上多少小时的补习班,以及一周中最长和最短的补习班各需要上多少小时。

解题思路
  1. 读入数据:首先,需要从输入中读取7个整数,这7个整数代表晶晶下周每天需要上的补习班小时数。
  2. 计算平均小时数:将所有天的补习班小时数相加,然后除以7,得到平均每天需要上的补习班小时数。
  3. 确定最长和最短的补习班小时数:在读入小时数的过程中,同时记录下遇到的最大和最小的小时数。
  4. 输出结果:输出平均小时数(保留1位小数),最长的补习班小时数和最短的补习班小时数。
代码实现
#include <iostream>
#include <algorithm> // 引入算法库,使用min和max函数
using namespace std;

int main() {
    int hours, totalHours = 0, maxHours = 0, minHours = INT_MAX;
    for (int i = 0; i < 7; i++) {
        cin >> hours;
        totalHours += hours;
        maxHours = max(maxHours, hours);
        minHours = min(minHours, hours);
    }
    cout << fixed; // 固定小数点输出格式
    cout.precision(1); // 设置小数点后一位精度
    cout << totalHours / 7.0 << " " << maxHours << " " << minHours;
    return 0;
}
代码解析
  • 初始化totalHours为0,用于累加一周的总补习时间;maxHours为0,表示一周中最长的补习班时间;minHoursINT_MAX,表示一周中最短的补习班时间。
  • 通过循环读入7天的补习班小时数,同时更新totalHoursmaxHoursminHours
  • 计算平均每天的补习班小时数,输出时保留一位小数。
  • 最后,输出平均每天需要上补习班的小时数、一周中最长和最短的补习班小时数。

相关推荐

  1. 东方 - 分支2) - 分支

    2024-03-27 18:48:02       34 阅读
  2. 东方 - 循环(2) - 求和计数

    2024-03-27 18:48:02       29 阅读
  3. 2. git 分支使用流程

    2024-03-27 18:48:02       42 阅读
  4. milvus2.4向量搜索源码分析

    2024-03-27 18:48:02       27 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-27 18:48:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-27 18:48:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-27 18:48:02       82 阅读
  4. Python语言-面向对象

    2024-03-27 18:48:02       91 阅读

热门阅读

  1. python ch10 文件和异常

    2024-03-27 18:48:02       40 阅读
  2. node整理学习(三)

    2024-03-27 18:48:02       38 阅读
  3. 海思 Hi3403V100 简介

    2024-03-27 18:48:02       84 阅读
  4. Idea与DataGrip各版本通用破解码,无需脚本。

    2024-03-27 18:48:02       110 阅读
  5. 深入理解 LVS:配置与应用详解

    2024-03-27 18:48:02       46 阅读
  6. 单位里,永远要记住这些残忍的处事之道!

    2024-03-27 18:48:02       34 阅读
  7. Linux安装程序

    2024-03-27 18:48:02       43 阅读
  8. Linux UVC Gadget Driver开发

    2024-03-27 18:48:02       40 阅读
  9. c#委托案例

    2024-03-27 18:48:02       38 阅读
  10. SpringBoot-注解:@Async 使用

    2024-03-27 18:48:02       43 阅读
  11. springBoot实现热部署

    2024-03-27 18:48:02       30 阅读