IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 学C语言的第九天:switch语句和分支嵌套 -> 正文阅读

[C++知识库]学C语言的第九天:switch语句和分支嵌套

switch 语句:

一个 switch 语句允许测试一个变量等于多个值时的情况。每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查。

注意事项:

  • 在case每一行的语句或程序块后面要加上break;(否则程序将会把所有程序块从前到后运行一遍。
  • default是可选的,如果上面的case中没有符合的才会选择default(属于备选情况),但是如果不加default则switch语句则不会做出任何响应。

语句形式:
…//其他语句
switch(表达式)
{
case 常量表达式1:语句或程序块1
case 常量表达式2:语句或程序块2

case 常量表达式n:语句或程序块n
default:语句或程序块n+1
}
…//其他语句
流程图:
流程图

示例:
根据评级查分数区间:

  3 #include<stdio.h>
  4 int main()
  5 {
  6   char grade;
  7   printf("请输入你的成绩:");
  8   scanf("%c",&grade);
  9   switch (grade)
 10   {
 11     case'A':printf("你的成绩大于九十。\n");break;
 12     case'B':printf("你的成绩在八十分到九十分之间。\n");break;
 13     case'C':printf("你的成绩在七十分到八十分之间。\n");break;
 14     case'D':printf("你的成绩在六十分到七十分之间。\n");break;
 15     case'E':printf("你的成绩在六十分以下。\n");break;
 16     default:printf("请输入正确的评级。\n");                                    
 17   }
 18   return 0;
 19 }

分支结构的嵌套:

套娃,一个if语句套一个if语句或者一个else语句套一个if语句。

注意事项:

  • else总是与其最近的if匹配:无论是switch或if语句,一定要保持写花括号的习惯,否则容易出bug。
  • 在if嵌套时,要加入getchar()来屏蔽回车键,防止在判断下一个表达式时,将回车键算作一个常量。
  • 用if判断单个字符时要加单引号,比如例三。

语句形式:
…//其他语句
if(表达式)
{
if(表达式){
…}
else{

}
}
else{

}
…//其他语句
上方语句为简写形式,讲花括号的前者放到if后面也可以。

流程图:
流程图2
示例:
例一:
判断两个数的大小

  1 #include<stdio.h>
  2 int main()
  3 {
  4   int a,b;
  5   printf("请输入两个数,以供于判断大小:");
  6   scanf("%d %d",&a,&b);
  7   if(a<b)
  8   {
  9   printf("%d<%d\n",a,b);
 10   }
 11   else
 12   {
 13     if(a==b)
 14     {
 15       printf("%d=%d\n",a,b);
 16     }
 17     else
 18     {
 19       printf("%d>%d\n",a,b);                                                   
 20     }
 21   }
 22   return 0;
 23 }

例二:
约小花出门玩:

  1 #include<stdio.h>
  2 int main()
  3 {
  4   char israin,isfree;
  5   printf("是否有空?(Y/N)\n");
  6   scanf("%c",&isfree);
  7   if(isfree=='Y')
  8   {
  9   printf("这就很好喽!\n");
 10   getchar();//这里是用getchar()来频屏蔽回车键
 11   printf("是否下雨?(Y/N)\n");
 12   scanf("%c",&israin);
 13     if(israin=='Y')
 14     {                                                                          
 15       printf("记得带伞哦!!!\n");
 16     }
 17     else
 18     {
 19       printf("那你快出来吧!!!\n");
 20     }
 21   }
 22   else
 23   {
 24     printf("那算了!\n");
 25   }
 26   return 0;
 27 }
 

例三:
小花做我女朋友!!

  1 #include<stdio.h>
  2 int main()
  3 {
  4   char a,b;
  5   printf("小花,你有男朋友吗?(Y/N)\n");
  6   scanf("%c",&a);
  7   if(a=='Y')
  8   {
  9     printf("那你们在一起吧!\n");
 10   }
 11   else
 12   {
 13     getchar();
 14     printf("做我女朋友好不好?(Y/N)\n");
 15     scanf("%c",&b);
 16     if(b=='Y')
 17     {
 18       printf("oh Yeah!\n");
 19     }
 20     else 
 21     {
 22       printf("啊这!!!\n");
 23     }
 24   }
 25   return 0;                                                                    
 26 }

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-01-16 12:51:59  更:2022-01-16 12:52:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 10:47:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码