【C++语法基础】4.分支和循环结构(✨新手推荐阅读)

news2024/12/28 2:14:27

前言

在C++编程中,分支和循环结构是控制程序流程的基本工具。分支结构允许程序根据特定条件执行不同的代码块,而循环结构则允许程序重复执行某个代码块。

分支结构

if 语句

if 语句是最基本的分支结构,它根据条件的真假来决定是否执行某段代码。

#include <iostream>  
  
int main() {  
    int x = 10;  
  
    if (x > 5) {  
        std::cout << "x is greater than 5" << std::endl;  
    }  
  
    return 0;  
}

if…else 语句

if…else 语句用于根据条件执行两个不同的代码块中的一个。

#include <iostream>  
  
int main() {  
    int x = 3;  
  
    if (x > 5) {  
        std::cout << "x is greater than 5" << std::endl;  
    } else {  
        std::cout << "x is not greater than 5" << std::endl;  
    }  
  
    return 0;  
}

if…else if…else 语句

if…else if…else 语句用于根据多个条件执行不同的代码块。

#include <iostream>  
  
int main() {  
    int x = 3;  
  
    if (x > 5) {  
        std::cout << "x is greater than 5" << std::endl;  
    } else if (x < 5) {  
        std::cout << "x is less than 5" << std::endl;  
    } else {  
        std::cout << "x is equal to 5" << std::endl;  
    }  
  
    return 0;  
}

三元运算符

三元运算符 ?: 是一个简洁的if-else结构,它返回两个值中的一个,取决于条件的真假。

#include <iostream>  
  
int main() {  
    int x = 3;  
    int result = (x > 5) ? x : 5; // 如果x > 5为真,则result为x的值,否则为5  
  
    std::cout << "The result is: " << result << std::endl;  
  
    return 0;  
}

循环结构

for 循环

for 循环是一种常用的循环结构,它允许你指定循环的初始化、条件和迭代步骤。

#include <iostream>  
  
int main() {  
    for (int i = 0; i < 5; ++i) {  
        std::cout << "i: " << i << std::endl;  
    }  
  
    return 0;  
}

while 循环

while 循环在条件为真时重复执行代码块。

#include <iostream>  
  
int main() {  
    int i = 0;  
  
    while (i < 5) {  
        std::cout << "i: " << i << std::endl;  
        ++i;  
    }  
  
    return 0;  
}

do…while 循环

do…while 循环至少执行一次代码块,然后在条件为真时重复执行。

#include <iostream>  
  
int main() {  
    int i = 0;  
  
    do {  
        std::cout << "i: " << i << std::endl;  
        ++i;  
    } while (i < 5);  
  
    return 0;  
}

循环的嵌套

你可以在循环内部使用另一个循环,这被称为循环的嵌套。

#include <iostream>  
  
int main() {  
    for (int i = 0; i < 3; ++i) {  
        for (int j = 0; j < 3; ++j) {  
            std::cout << "i: " << i << ", j: " << j << std::endl;  
        }  
    }  
  
    return 0;  
}

分支和循环结构是编程中非常基础且重要的概念。通过合理地使用这些结构,可以让我们写出的代码更有逻辑性,满足现实的需求。

真心给大家推荐由我主讲的性价比超高的《算法基础课》,想要学习更多ACM/蓝桥杯/CSP/NOIP算法竞赛知识,无论你是想要竞赛拿奖的大学生、想要在笔试面试中脱颖而出、或者是对计算机编程感兴趣的小朋友,都可以学习,一定不要错过!点此了解:https://www.starrycoding.com/course/1
适用对象广泛
适用对象广泛
在这里插入图片描述
内容紧贴考纲,每节课约1.5小时高密度知识
在这里插入图片描述
广受好评,学习氛围浓厚,平等互助,拒绝歧视与绑架
在这里插入图片描述
视频、习题、文档,想学就学
没错,在学习算法的时候你甚至可以看V。
最最最最最最最最重要的是,由于课程的准备、录制、平台(前后端和评测机)的开发、推广都是由我一人完成,所以成本压的非常非常低,算法基础课仅售39元。

欢迎加入StarryCoding官方用户Q群:746470220(官网www.starrycoding.com)

悄悄说:StarryCoding平台还有算法中级课(可以自行了解)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1461672.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux实验记录:使用LNMP架构部署动态网站环境

前言&#xff1a; 本文是一篇关于Linux系统初学者的实验记录。 参考书籍&#xff1a;《Linux就该这么学》 实验环境&#xff1a; VmwareWorkStation 17——虚拟机软件 RedHatEnterpriseLinux[RHEL]8——红帽操作系统 备注&#xff1a; LNMP动态网站部署架构是一套由&…

Linux 性能分析工具汇总

Linux 性能分析工具汇总 出于对Linux操作系统的兴趣&#xff0c;以及对底层知识的强烈欲望&#xff0c;因此整理了这篇文章。本文也可以作为检验基础知识的指标&#xff0c;另外文章涵盖了一个系统的方方面面。如果没有完善的计算机系统知识&#xff0c;网络知识和操作系统知识…

(done) 两个矩阵 “相似” 是什么意思?

参考视频&#xff1a;https://www.bilibili.com/video/BV1zu411673J/?spm_id_from333.337.search-card.all.click&vd_source7a1a0bc74158c6993c7355c5490fc600 参考资料&#xff1a;https://baike.baidu.com/item/%E7%9B%B8%E4%BC%BC%E7%9F%A9%E9%98%B5/10369874?frge_a…

离线环境解决IDEA连接数据库报需下载驱动的问题 Download missing driverfiles

去外网电脑上把这个目录下的MySQL ConnectorJ文件夹整体拷贝的内网电脑上就ok了&#xff01; C:\Users\like12\AppData\Roaming\JetBrains\IntelliJIdea2021.2\jdbc-drivers 参考&#xff1a;IDEA Download missing driver files 下载失败解决方法-CSDN博客

开发一款招聘小程序需要具备哪些功能?

随着时代的发展&#xff0c;找工作的方式也在不断变得简单&#xff0c;去劳务市场、人才市场的方式早就已经过时了&#xff0c;现在大多数年轻人都是直接通过手机来找工作。图片 找工作类的平台不但能扩大企业的招聘渠道&#xff0c;还能节省招聘的成本&#xff0c;方便求职者进…

7. Qt添加滑动条

前言&#xff1a; 添加一个这样的滑条&#xff0c;双方关联自动修改,也提供代码创建方式 技能&#xff1a; QSpinBox QSlider 方式一 Qt 的图形化编程&#xff08;用ui文件&#xff0c;非常简单&#xff09; 1.Spin Box 首先找到显示数字的这个部分。是input widget->sp…

useGeneratedKeys=“true” keyProperty=“id”

useGeneratedKeys“true” keyProperty“id” 这个注解在xml文件的insert方法中&#xff0c;可以用于返回主键值&#xff1b; 并且useGeneratedKeys参数只针对 insert 语句生效&#xff0c;默认为 false&#xff1b;

【刷题记录】最大公因数,最小公倍数(辗转相除法、欧几里得算法)

本系列博客为个人刷题思路分享&#xff0c;有需要借鉴即可。 1.题目链接&#xff1a; 无 2.详解思路&#xff1a; 题目描述&#xff1a;输入两个正整数&#xff0c;输出其最大公因数和最小公倍数 一般方法&#xff1a;最大公因数&#xff1a;穷加法&#xff1b;最小公倍数&…

小迪安全29WEB 攻防-通用漏洞SQL 注入增删改查盲注延时布尔报错

#知识点&#xff1a; 1、明确查询方式注入 Payload 2、明确查询方式注入产生功能 3、明确 SQL 盲注延时&布尔&报错 #详细点&#xff1a; 盲注就是在注入过程中&#xff0c;获取的数据不能回显至前端页面。 也就是在代码中无echo将sql结果输出出来 此时&#…

Android---Jetpack Compose学习004

CompositionLocal 通常情况下&#xff0c;在 Compose 中&#xff0c;数据以参数形式向下流经整个界面树传递给每个可组合函数。但是&#xff0c;对于广泛使用的常用数据&#xff08;如颜色或类型样式&#xff09;&#xff0c;这可能会很麻烦。 为了支持无需将颜色作为显式参数…

stm32学习总结 FMC 驱动LCD

1&#xff0c; 显示器分类&#xff08;了解&#xff09; 全彩显示&#xff0c;LCD具有更多的优势&#xff0c;适合在单片机上使用 2&#xff0c; LCD简介&#xff08;了解&#xff09; Liquid Crystal Display&#xff0c;即液晶显示器&#xff0c;由&#xff1a;玻璃基板、背…

宝塔面板-安装与卸载

宝塔面板&#xff08;BT Panel&#xff09;是一款在互联网上广泛使用的服务器管理软件&#xff0c;它以其简洁的界面和强大的功能受到了许多站长的喜爱。通过宝塔面板&#xff0c;用户可以轻松地管理服务器上的网站、数据库、FTP、邮箱等服务。本文将详细介绍宝塔面板的安装与卸…

嵌入式产品开发流程全解析

&#xff08;本文为简单介绍&#xff0c;内容来源于网络&#xff09; 嵌入式产品开发是一个涵盖硬件和软件的综合系统工程,其开发流程可以概括为需求分析、系统设计、软硬件开发与调试、产品验证和批量生产几大阶段。 需求分析阶段是开发流程的基础,主要对产品的硬件资源、软…

【企业动态】复工啦,回顾2023,展望2024!东胜物联与您同启新程

这几天相信小伙伴们都已经陆陆续续回归工作岗位了吧&#xff0c;复工后在CSDN发布的第二篇文章带大家来回顾物联网硬件设备及解决方案商东胜物联的2023年总结以及2024年展望&#xff0c;分享给所有对Dusun感兴趣的新老朋友❤️ 2023年&#xff0c;东胜不仅面对了一些挑战&…

CVE-2024-24565 CrateDB数据库任意文件读取漏洞

目录 前言 简介 ​编辑 环境搭建 漏洞复现 前言 本次介绍的漏洞不同与以往&#xff0c; 本次洞更多是适用于利用数据库提权。 利用数据库的导入导出数据的功能&#xff0c;我们往往可以将内部的一些敏感文件如/etc/passwd导入到数据库进行查看。也可以将数据导入到一些特…

分组统计

目录 分组统计 根据部门编号分组&#xff0c;查询每个部门的编号、人数、平均工资 根据职位分组&#xff0c;统计出每个职位的人数、最低工资与最高工资 如果查询不使用 GROUP BY 子句&#xff0c;那么 SELECT 子句中只允许出现统计函数&#xff0c;其他任何字段不允许出现…

统计图雷达图绘制方法

统计图雷达图绘制方法 常用的统计图有条形图、柱形图、折线图、曲线图、饼图、环形图、扇形图。 前几类图比较容易绘制&#xff0c;饼图环形图绘制较难。 还有一种雷达图的绘制也较难&#xff0c;今提供雷达图的绘制方法供参考。 本方法采用C语言的最基本功能&#xff1a; &am…

Leetcode刷题笔记题解(C++):83. 删除排序链表中的重复元素

思路&#xff1a;链表相关的问题建议就是画图去解决&#xff0c;虽然理解起来很容易&#xff0c;但就是写代码写不出来有时候&#xff0c;依次去遍历第二节点如果与前一个节点相等则跳过&#xff0c;不相等则遍历第三个节点 /*** Definition for singly-linked list.* struct …

yolov5-tracking-xxxsort yolov5融合六种跟踪算法(二)--目标识别

本次开源计划主要针对大学生无人机相关竞赛的视觉算法开发。 开源代码仓库链接&#xff1a;https://github.com/zzhmx/yolov5-tracking-xxxsort.git 先按照之前的博客配置好环境&#xff1a; yolov5-tracking-xxxsort yolov5融合六种跟踪算法&#xff08;一&#xff09;–环境配…

Canvas绘制

Canvas绘制 一、介绍效果图 二、画圆1 写一个页面2 画一个圆&#xff08;点&#xff09;3 效果 三 画直线1 写一个页面2 画直线3 效果 四 用直线连接两个点1 写一个页面2 连线3 效果 五 画随机点1 写一个页面2 随机点3 效果 六 画随机点并连线1 写一个页面2 画点连线3 效果 七 …