当前位置: 首页 > article >正文

【C++】程序流程控制(中)

4.1.3switch语句

作用:执行多条件分支语句

语法:

switch(表达式)

{

case   结果1:执行语句;break;

case  结果2:执行语句;break;

case 结果3:执行语句;break;

...

default :执行语句;break;

}

示例:

代码:

#include<iostream>
using namespace std;
int main()
{
    //给电影评分:
    //10~9经典
    //8~7非常好
    //6~5一般
    //5分以下,不好看
    int score = 0;
    cin >> score;
    switch (score)
    {
    case 10:
    case 9:
        cout << "经典" << endl;
        break;
    case 8:
    case 7:
        cout << "非常好" << endl;
        break;
    case 6:
    case 5:
        cout << "一般" << endl;
        break;
    default:
        cout << "不好看" << endl;
        break;

    }
    system("pause");
    return 0;
}

注意:

(1)switch语句表达式的类型只能是:整型或字符型

(2)case里面如果没有break,那么程序会一直向下执行。

例如:

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

4.2循环结构

4.2.1while循环语句

作用:满足循环条件,执行循环语句

语法:while(循环条件){循环语句}

解释:只有循环条件的结果为真时,才执行循环条件。

示例://打印0~9数字

代码:

//while循环语句的使用:
#include<iostream>
using  namespace  std;
int main()
{
    //打印0-9
    int i = 0;
    while (i < 10)
    {
        cout << i << endl;
        i++;

    }
    system("pause");
    return 0;
}

4.2.2  do...while循环语句

作用:满足循环条件,执行循环语句

语法:do{循环语句}while(循环条件);

注意:与while的区别在于do...while会先执行一次循环语句,然后再判断循环条件。

示例://用do...while打印0到9

代码:

#include<iostream>
using namespace std;
int main()
{
    //在屏幕上打印0-9
    int i = 0;
    do {
        cout << i << endl;
        i++;
    } while (i < 10);
    system("pause");
    return 0;

}

练习案例:

水仙花数是指一个三位数,它的每位上的数字的三次幂之和等于它本身

例如;1^3+5^3+3^3=153,请利用do...while语句,求出所有三位数中的水仙花数。

代码:

//do...while的使用---实现水仙花数
#include<iostream>
using namespace std;
int main()
{
    int num = 100;
    int a = 0;//用于记录个位数字
    int b = 0;//用于记录十位数字
    int c = 0;//用于记录百位数字
    do
    {
        a = num % 10;
        b = (num / 10) % 10;
        c = num / 100;
        if (a * a * a + b * b * b + c * c * c == num)
        {
            cout << num << endl;
        }

    } while (num < 1000);
     system("pause");
    
    
    return 0;
}


http://www.kler.cn/a/420709.html

相关文章:

  • 5G CPE介绍(一)
  • 【Spring】Spring IOCDI:架构旋律中的“依赖交响”与“控制华章”
  • HTML5系列(9)-- Web Components
  • 营业执照 OCR 识别 API 的发展前景
  • 在 CentOS 上安装 Docker:构建容器化环境全攻略
  • linux系统中常用文件日常使用命令记录
  • Linux系统 进程
  • 大模型开发和微调工具Llama-Factory-->安装
  • Unity下载文件断点续下
  • K8S疑难概念理解——Pod,应该以哪种Kind来部署应用,为什么不直接Pod这种kind?
  • 【Elasticsearch】04-RestAPI
  • 深度学习常用训练命令解释
  • 在线家具商城基于 SpringBoot:设计模式与实现方法探究
  • vue中v-for的细节
  • 02appdesigner学习记录
  • Kafka怎么发送JAVA对象并在消费者端解析出JAVA对象--示例
  • Flutter的文字高度及行高简单计算
  • 智能探针技术:实现可视、可知、可诊的主动网络运维策略
  • 基于SSM超市商品管理系统JAVA|VUE|Springboot计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解
  • 如何运用Python爬虫快速获得1688商品详情数据
  • Spring MVC接收前台信息,并在页面返回
  • 人工智能-深度学习-BP算法
  • 【计算机网络】实验3:集线器和交换器的区别及交换器的自学习算法
  • mysql之慢查询设置及日志分析
  • Paper -- 建筑物高度估计 -- 使用街景图像、深度学习、轮廓处理和地理空间数据的建筑高度估计
  • React.memo 和useMemo 的区别