C++语言之 switch 语句

当分支比较多的时候,为了不让程序变得复制和凌乱,我们可以使用 switch 语句,下面会介绍 switch 语句。


目录

1.格式

2.执行过程

3.例题

3.1 代码


1.格式

switch (表达式) 
{
    case 常量表达式1 :
       语句序列 1;
       break;
    case 常量表达式n :
       语句序列 n;
       break;
    default : 
        语句序列 n+1;
}

2.执行过程

(1)计算出 switch 后面括号内表达式的值。

(2)计算出 case 后面常量表达式的值。

(3)让在第(1)步算出的值依次和在第(2)步算出的值比较,如果相等,就执行对应语句。当执行到花括号就结束整个 switch 语句的执行。

注意:

switch语句中表达式类型只能是整型或者字符型。case里如果没有break,那么程序会一直向下执行。case后面的常量可以加小括号也可以不加。default后面不用再加break,加上也不是不行。case 常量 后面的语句不用写花括号将case之后的语句括起来,有多条语句也不用。你定义的switch接收的是整型还是字符型,后面case对应的取值判断时,也会把它转换成整型或者字符型的再去和输入比较。

总结:

与if语句比,对于多条件判断时,switch的结构清晰,执行效率高,但是switch不可以判断区间。

3.例题

点和正方形的关系

【题目描述】

有一个正方形,四个角的坐标(x,y)分别是(1,-1),(1,1),(-1,-1),(-1,1),x是横轴,y是纵轴。写一个程序,判断一个给定的点是否在这个正方形内(包括正方形边界)。如果点在正方形内,则输出yes,否则输出no。

【输入】

输入一行,包括两个整数x、y,以一个空格分开,表示坐标(x,y)。

【输出】

输出一行,如果点在正方形内,则输出yes,否则输出no。

【输入样例】

1 1

【输出样例】

yes

【题目来源】

信息学奥赛一本通(C++版)在线评测系统

3.1 代码

#include <iostream>
using namespace std;
int main()
{
    int x, y;
    cin >> x >> y;
    switch (x >= -1 && x = -1 && y <= 1)
    {
        case 0: cout << "no"; break;
        case 1: cout << "yes";
    }
    return 0;
}

创作不易,白嫖不好,各位的支持和认可,就是我创作的最大动力,如果喜欢我的文章,给个关注吧!

冰焰狼 | 文

如果本篇博客有任何错误,请批评指教,不胜感激 !

 

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值