代码打卡20-分支结构练习02 用if-else语句判断上课周和放假

本题需要用if-else语句判断上课周和放假:输入1-12范围的数字表示月份(month),若输入的月份是9-12和1时,输出“本学年上学期”;若输入的月份为2时,则输出“寒假!”;若输入的月份为3-6时,则输出“本学年下学期”;若输入的月份为7-8时,则输出“暑假!”;若输入的月份是其他数值或字符时,则输出“请输入1-12范围的整数!”。

输入格式:

输入1-12范围的整数。

输出格式:

对每一个输入,在一行中输出对应的结果。

输入样例:

在这里给出一组输入。例如:

1

输出样例:

在这里给出相应的输出。例如:

本学年上学期

#include <stdio.h>
int main() {
    int month;
    scanf("%d", &month);
    if (month >= 1 && month <= 12) {
        if (month >= 9 && month <= 12 || month == 1) {
            printf("本学年上学期\n");
        } else if (month == 2) {
            printf("寒假!\n");
        } else if (month >= 3 && month <= 6) {
            printf("本学年下学期\n");
        } else if (month >= 7 && month <= 8) {
            printf("暑假!\n");
        }
    } else {
        printf("请输入1-12范围的整数!\n");
    }
    return 0;
}

这个C程序的设计是根据输入的月份确定学期或假期的程序。以下是设计和总结的详细说明:

### 设计:

1. **输入:**
   - 程序首先声明一个整数变量 `month` 用于存储用户输入的月份。
   - 使用 `scanf` 获取用户输入。

    ```c
    int month;
    scanf("%d", &month);
    ```

2. **验证:**
   - 检查输入的月份是否在有效范围内(1-12)。

    ```c
    if (month >= 1 && month <= 12) {
    ```

3. **学期确定:**
   - 如果月份在9(九月)到12(十二月)之间,或者是1(一月),则打印"本学年上学期"。

    ```c
    if (month >= 9 && month <= 12 || month == 1) {
        printf("本学年上学期\n");
    ```

   - 如果月份是2(二月),则打印"寒假!"

    ```c
    } else if (month == 2) {
        printf("寒假!\n");
    ```

   - 如果月份在3(三月)到6(六月)之间,则打印"本学年下学期"。

    ```c
    } else if (month >= 3 && month <= 6) {
        printf("本学年下学期\n");
    ```

   - 如果月份在7(七月)到8(八月)之间,则打印"暑假!"。

    ```c
    } else if (month >= 7 && month <= 8) {
        printf("暑假!\n");
    ```

4. **无效输入:**
   - 如果输入的月份不在有效范围内,打印错误消息。

    ```c
    } else {
        printf("请输入1-12范围的整数!\n");
    ```

5. **返回:**
   - 程序返回0,表示执行成功。

    ```c
    return 0;
    ```

### 总结:

- 程序接受用户输入的月份。
- 对输入进行验证,确保其在1到12的范围内。
- 根据输入的月份确定并打印相应的学期或假期。
- 如果输入超出有效范围,打印错误消息。
- 代码使用嵌套的if-else语句进行组织,以提高代码的清晰度和可读性。
- 该程序处理了不同情景,例如特定月份对应的学期和假期,并为无效输入提供了明确的提示。

这个程序是C语言中决策结构的简单示例,演示了如何使用if-else语句根据不同条件进行分支。

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值