白小木 发表于 2019-5-30 13:04:15

if语句改成switch语句

今天学了switch语句,然后对前面的一道if语句编写的判断四季的题有所感悟
开始还兴致勃勃的想改写的,结果一操作,就感觉有点懵,找不到可以用一个表达式
代替if的switch语句,
还望大神指点迷津
代码如下
#include<stdio.h>

int main()
{
        int a;
        puts("请输入要查询的月份。");
        printf("月份:\n");scanf("%d",&a);
       
        if(3<=a&&a<=5)
          printf("%d月是春季\n",a);
        else if(6<=a&&a<=8)
          printf("%d月是夏季\n",a);
        else if(9<=a&&a<=11)
          printf("%d月是秋季\n",a);
        else
          printf("%d月是冬季\a",a);
       
        return 0;
}

人造人 发表于 2019-5-30 13:44:25

#include <stdio.h>

int main(void)
{
        int a;
        puts("请输入要查询的月份: ");
        scanf("%d", &a);

        switch(a)
        {
        case 3:
        case 4:
        case 5:
                printf("%d月是春季\n", a);
                break;
        case 6:
        case 7:
        case 8:
                printf("%d月是夏季\n", a);
                break;
        case 9:
        case 10:
        case 11:
                printf("%d月是秋季\n", a);
                break;
        case 12:
        case 1:
        case 2:
                printf("%d月是冬季\n", a);
                break;
        default:
                printf("错误的季节!\n");
                break;
        }
        return 0;
}

白小木 发表于 2019-5-30 17:17:11

那我感觉,这没起到简化作用呢

人造人 发表于 2019-5-30 21:50:12

白小木 发表于 2019-5-30 17:17
那我感觉,这没起到简化作用呢

switch不适合用在这种场合

白小木 发表于 2019-5-30 22:52:52

人造人 发表于 2019-5-30 21:50
switch不适合用在这种场合

哦啦,谢过大佬{:5_109:}
页: [1]
查看完整版本: if语句改成switch语句