运用switch语句写了一个小程序,功能如下:
输入王者荣耀里的英雄缩写,输出对应永雄别名/称号/封号。
程序只支持部分英雄缩写,原因是作者懒得敲代码了,部分代码已经能够演示函数功能。
switch语句是什么?
示例:
switch ( 整型表达式)
{
case 常量1:
语句 <–可选
case 常量2:
语句 <–可选
default : <–可选
语句 <–可选
}
代码如下(示例):
#include2.运行结果#include int main(void) { char ch[5]={'0','0','0','0','0'}; int a; while (ch[0] != '#') //输入 # 终止 { printf("输入王者荣耀英雄首字母缩写:n "); scanf_s("%s", ch, 40);//输入英雄缩写 a = strlen(ch); //得到英雄缩写长度 switch (a) { case 1: //一字 {if (ch[0] == 'f') printf("玉城王子n"); if (ch[0] == 'l') printf("鲨之猎刃n"); if (ch[0] == 'j') printf("破镜之刃n"); if (ch[0] == 'y') printf("星辰之子or鹿灵守心n"); if (ch[0] == 'k') printf("破灭刃锋n"); else printf("此英雄尚未添加!n"); } break; case 2://二字 {if (ch[0] == 'j' && ch[1] == 'c') printf("渡世行者n"); if (ch[0] == 'y' && ch[1] == 'y') printf("燎原之心n"); if (ch[0] == 'a' && ch[1] == 'l') printf("精灵之舞n"); if (ch[0] == 'm' && ch[1] == 'y') printf("烈炮小子n"); if (ch[0] == 'x' && ch[1] == 's') printf("幻纱之灵n"); if (ch[0] == 'm' && ch[1] == 'c') printf("冷晖之枪n"); else printf("此英雄尚未添加!n"); } break; case 3://三字 {if (ch[0] == 's' &&ch[1] == 'w' && ch[2] == 'k') printf("齐天大圣n"); if (ch[0] == 'x' && ch[1] == 'l' && ch[2] == 't') printf("玫瑰剑士n"); if (ch[0] == 'a' && ch[1] == 'g' && ch[2] == 'd') printf("山林之子n"); else printf("此英雄尚未添加!n"); } break; case 4://四字 {if (ch[0] == 'l' && ch[1] == 'b'&& ch[2] == 'd' && ch[3] == 's') printf("神匠n"); if (ch[0] == 's' && ch[1] == 'g' && ch[2] == 'w' && ch[3] == 'e') printf("惊鸿之笔n"); if (ch[0] == 'g' && ch[1] == 'j' && ch[2] == 'm' && ch[3] == 'y') printf("淬命双剑n"); else printf("此英雄尚未添加!n"); } break; default: printf("此英雄尚未添加!n"); } } return 0; }
代码如下(示例):
输入王者荣耀英雄首字母缩写: agd 山林之子 输入王者荣耀英雄首字母缩写: hhh 此英雄尚未添加! 输入王者荣耀英雄首字母缩写: # 此英雄尚未添加!
总结
使用条件运算符和 if else 语句很容易编写二选一的程序。然而,有时程
序需要在多个选项中进行选择。可以用if else if…else来完成。但是,大多数
情况下使用switch语句更方便。



