C语言中的switch语句基本用法
导语:switch语句是一个多分支选择语句,并且可以支持嵌套
switch语句的基本格式
switch语句通过将表达式的值与常量值进行比对,如果相等则执行后面的语句,如果不相等则跳到下一个case语句,当表达式和常量值相等,switch语句会将当前case语句以及后面所有的case语句全部输出。假如我们要实现用户输入一个数字来判断今天是星期几,那么就可以用下面的代码实现
//#define _CRT_SECURE_NO_WARNINGS 1
//#include <stdio.h>
//int main()switch的用法c语言
//{
//    int day = 0;               
//    printf("请输入一个数字\n"); 
//    scanf("%d", &day);           
//    switch (day)
//    {
//    case 1:printf("星期一\n");
//        break;
//    case 2:printf("星期二\n");
//        break;
//    case 3:printf("星期三\n");
//        break;
//    case 4:printf("星期四\n");
//        break;
//    case 5:printf("星期五\n");
//        break;
//    case 6:printf("星期六\n");
//        break;
//    case 7:printf("星期天\n");
//        break;
//    }
//    return 0;
//}
这里我们加上一个break语句会有意想不到的结果,当语句运行到break时就不再运行了,接下来剩下的case语句也不会再执行,switch语句结束,看下面的代码的运行结果
//#define _CRT_SECURE_NO_WARNINGS 1
//#include <stdio.h>
//int main()
//{
//    int day = 0;               
//    printf("请输入一个数字\n"); 
//    scanf("%d", &day);           
//    switch (day)
//    {
//    case 1:printf("星期一\n");
//        break;
//    case 2:printf("星期二\n");
//        break;
//    case 3:printf("星期三\n");
//        break;
//    case 4:printf("星期四\n");
//        break;
//    case 5:printf("星期五\n");
//        break;
//    case 6:printf("星期六\n");
//        break;
//    case 7:printf("星期天\n");
//        break;
//    }
//    return 0;
//}
如果用户输入时不小心输入了一个switch语句中没有的常量值怎么办呢,只需要一个default就可以解决问题,请看下面代码将会体现出default的作用
//#define _CRT_SECURE_NO_WARNINGS 1
//#include <stdio.h>
//int main()
//{
//    //实现1-5都为工作日,6,7为休息日,可以看出当case语句后没有执行语句且没有break时代码会从条件判断成立进入,直到遇到break
//    int day = 0;
//    scanf_s("%d", &day);
//    switch (day)
//    {
//    case 1:
//    case 2:
//    case 3:
//    case 4:
//    case 5:printf("工作日\n");
//        break;
//    case 6:printf("休息日\n");
//        break;
//    case 7:printf("休息日\n");
//        break;
//    default:printf("请重新输入\n");
//        break;
//    }
//
//    return 0;
//}
switch的嵌套语句,这就需要你们自己去尝试的领悟,得出代码的结果
//#define _CRT_SECURE_NO_WARNINGS 1
//#include <stdio.h>
//int main()
//{
//    int n = 1;
//    int m = 2;
//    switch (n)
//    {
//    case 1:m++;
//    case 2:n++;
//    case 3:
//        switch (n) //switch语句可以支持嵌套
//        {
//        case 1:n++;
//        case 2:m++; n++;
//            break;
//        default:
//            break;
//        }
//    case 4:m++;
//        break;
//    default:
//        break;
//    }
//    printf("m=%d,n=%d\n", m, n);
//    return 0;
//}
本章终,谢谢大家支持!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。