基于C++基础知识的循环语句

一、while循环

while循环语句形式如下:

while(表达式){
     语句
} 

    循环每次都是执行完语句后回到表达式处重新开始判断,重新计算表达式的值,一旦表达式的值为假就退出循环。用花括号括起来的多条简单语句,花括号及其包含的语句被称为循环体,循环主要指循环执行循环体中的内容。

使用while循环计算从1到10的累加,如图1-1所示。

#include<iostream>
using namespace std;
int main(){
	int sum=0, i=1;
	while(i<=10){
		sum=sum+i;
		i++; //累加,完成1到10的递增
	}
	cout<<"结果为:"<<sum<<endl;
}

图1-1 while循环语句图 

 while循环的运行结果如下所示。

 下面的代码是一个无限循环语句。

while(1){
   ...
}

 而这下面的代码则是一个不会进行循环的语句

while(0){
    ...
}

 二、do...while循环

do...while循环语句的一般形式如下:

do{
   语句
}while(表达式)

    do为关键字,必须与while一起使用。do...while循环的执行顺序是先执行循环体中的内容,然后判断表达式的值。

使用do...while循环计算从1到10的累加,如图2-1所示。

#include<iostream>
using namespace std;
int main(){
	int sum=0, i=1;
	do{
		sum=sum+i;
		i++;
	}while(i<=10);
	cout<<"结果为:"<<sum<<endl;
}

 图2-1 do..while循环语句图

 运行结果跟while循环结果一样,可看上图。

 do..while循环的执行顺序是先执行循环体,如果循环条件不成立,循环体也就执行了一次。

三、for循环 

for循环语句的一般形式如下:

for(赋值表达式1;关系表达式;赋值表达式2){
    语句
}

 使用for循环实现1到100的累加,如图3-1所示。

#include<iostream>
using namespace std;
int main(){
	int sum=0;
	for(int i=1;i<=100;i++){
		sum=sum+i;
	} 
	cout<<"结果为:"<<sum<<endl;
}

 图3-1 for循环语句图

 for循环的运行结果如下所示。

 for循环可以在赋值表达式1中直接声明变量。

如果在赋值表达式1声明两个相同的变量,编译器将报错。

#include<iostream>
using namespace std;
int main(){
	for(int i=1, sum=0;i<=100;i++){
		sum=sum+i;
	} 
	cout<<"结果为:"<<sum<<endl;
}

 以下for循环的常用变体形式。 

  • 省略赋值表达式1的情况

 如果省略赋值表达式1,就得在循环语句外声明变量并赋初始值。

#include<iostream>
using namespace std;
int main(){
	int sum=0;
    int i=0;
	for(;i<=100;i++){
		sum=sum+i;
	} 
	cout<<"结果为:"<<sum<<endl;
}

  •  省略关系表达式的情况

 省略循环判断语句,没有终止条件,循环就会变成无限循环。

  •  省略赋值表达式2的情况

 循环就会变成无限循环,因为控制循环的变量永远都是初始值,永远符合循环条件。

  •  省略赋值表达式1和2的情况如图3-2所示。
#include<iostream>
using namespace std;
int main(){
	int sum=0;
	int i=0;
	for(;i<=100;){
		sum=sum+i;
		i++;
	} 
	cout<<"结果为:"<<sum<<endl;
}

图3-2 

 运行结果如下所示。

四、总结

    以上就是今天要讲的内容,本文简单介绍了C++基础中的do..while、while和for循环语句。如有想要了解更多相关的C++基础知识的读者,欢迎您点击下面链接进行学习。

CSDN

CSDN

CSDN

https://mp.csdn.net/mp_blog/creation/editor/138447951

五、结言

    感谢大家的阅读与参与,您的支持是我前进的动力!让我们一起进步,加油!谢谢您的观看!!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ContEA阅读笔记

Facing Changes: Continual Entity Alignment for Growing Knowledge Graphs 面对变化&#xff1a;不断增长的知识图谱的持续实体对齐 Abstract 实体对齐是知识图谱(KG)集成中一项基本且重要的技术。多年来&#xff0c;实体对齐的研究一直基于知识图谱是静态的假设&#xff…

Day 41 343.整数拆分 96.不同的二叉搜索树

整数拆分 给定一个正整数 n&#xff0c;将其拆分为至少两个正整数的和&#xff0c;并使这些整数的乘积最大化。 返回你可以获得的最大乘积。 示例 1: 输入: 2输出: 1解释: 2 1 1, 1 1 1。 示例 2: 输入: 10输出: 36解释: 10 3 3 4, 3 3 4 36。说明: 你可以假设 …

Java基础教程 - 5 数组

更好的阅读体验&#xff1a;点这里 &#xff08; www.doubibiji.com &#xff09; 更好的阅读体验&#xff1a;点这里 &#xff08; www.doubibiji.com &#xff09; 更好的阅读体验&#xff1a;点这里 &#xff08; www.doubibiji.com &#xff09; 5 数组 前面我们保存数据…

前端基础学习html(1)

1.标题标签.h1,h2...h6 2.段落标签p 换行标签br 3.加粗strong(b) /倾斜em(i) /删除 del(s) /下划线ins(u) 4.盒子&#xff1a;div //一行一个 span//一行多个 5.img :src alt title width height border 图片src引用&#xff1a;相对路径 上级/同级/中级 绝对路径&#xff…

直播话术核心逻辑,学了轻松提高销量!沈阳直播运营培训

直播话术到底该怎么说&#xff1f; 产品话术说得好&#xff0c;直播间一次就能卖出去上万件产品&#xff1b;产品话术说不好&#xff0c;直播间半个月也卖不出去10件产品。 我们上次就有跟大家说过产品话术的具体流程&#xff0c;但发现还有更多朋友居然还是不能够很好地完成一…

2024/5/6 QTday1

自由发挥应用场景&#xff0c;实现登录界面。 要求&#xff1a;尽量每行代码都有注释。 #include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//窗口相关设置this->resize(350,470);this->setFixedSize(350,470);//窗口标题this-&g…

一个简单的仓库出入库管理软件的流程是什么样的?有哪些功能?

身为仓库文员&#xff0c;我深知仓库管理对于公司运营的重要性。仓库是公司物资的中转站&#xff0c;其管理的好坏直接关系到公司的运营效率和成本控制。然而&#xff0c;传统的仓库管理方式往往存在着效率低下、易出错等问题&#xff0c;为了解决这些问题&#xff0c;我们需要…

uboot图形界面配置

文章目录 一、环境安装二、配置默认项2.图形界面 三、图形配置项的来源1.mainmenu主界面 一、环境安装 &#x1f4a6;uboot 或 Linux 内核可以通过输入“make menuconfig”来打开图形化配置界面&#xff0c;menuconfig是一套图形化的配置工具&#xff0c;需要 ncurses 库支持。…

2024年电工杯数学建模竞赛A题B题思路代码分享

您的点赞收藏是我继续更新的最大动力&#xff01; 欲获取更多电工杯学习资料&#xff0c;可点击如下卡片链接 点击链接加入群聊【2024电工杯】&#xff1a;http://qm.qq.com/cgi-bin/qm/qr?_wv1027&k_PrjarulWZU8JsAOA9gnj_oHKIjFe195&authKeySbv2XM853pynlnXiv6M58…

解决github的remote rejected|git存储库的推送保护

前言 git存储库的推送保护。当你试图推送代码到GitHub仓库时&#xff0c;由于存在与主分支&#xff08;master&#xff09;相关的仓库规则违规行为&#xff0c;推送会被拒绝了。这种保护机制帮助确保只有经过授权和符合规定的代码才能被合并到主分支&#xff0c;从而保护了主分…

网络聊天室:通过Servlet和JSP,结合session和application实现(文末附源码)

目录 一.成品效果 二.代码部分 chat.jsp ChatServlet 一.成品效果 在启动成功后&#xff0c;我们就可以在任意俩个浏览器页面中相互发消息&#xff0c;如图所示左边屏幕使用的是Edge浏览器&#xff0c;右图使用的是火狐浏览器。当然笔者这里只是简单实现最基本的一些功能&…

【LeetCode刷题记录】105. 从前序与中序遍历序列构造二叉树 106. 从中序与后序遍历序列构造二叉树

105 从前序与中序遍历序列构造二叉树 给定两个整数数组 preorder 和 inorder &#xff0c;其中 preorder 是二叉树的先序遍历&#xff0c; inorder 是同一棵树的中序遍历&#xff0c;请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder [9,3,1…

Linux--IIC驱动编程实验

对于 I2C 主机驱动&#xff0c;一旦编写完成就不需要再做修改&#xff0c;其他的 I2C 设备直接调用主机驱动提供的 API 函数完成读写操作即可。这个正好符合 Linux 的驱动分离与分层的思想&#xff0c;因此 Linux内核也将 I2C 驱动分为两部分&#xff1a; ①、 I2C 总…

盘一盘接口测试的那些痛点,你现在会解决了吗

前言 说到接口测试&#xff0c;想必大家一定不会陌生。接口测试就是测试系统组件间&#xff0c;接口对接是否顺畅的一种测试。包括测试数据能否交换、能否传递、能否正常控制管理过程&#xff0c;以及系统间的相互逻辑依赖关系&#xff0c;等等。 由于接口测试主要是检测系统…

5月3日江苏某厂冷却塔清洗工作汇报-智渍洁

5月3日 施工人员&#xff1a;张能超&#xff0c;张伟&#xff0c;刘平&#xff0c;曾巧 施工事项&#xff1a;空冷器脱脂 今日工作进度&#xff0c;清洗6台遇到的问题&#xff0c;就是那个喷雾器不经用&#xff0c;一会儿又坏了 重庆智渍洁环保科技有限公司专注于工业清洗&…

使用ThemeRoller快速实现前端页面风格美化

使用ThemeRoller快速实现前端页面风格美化 文章目录 使用ThemeRoller快速实现前端页面风格美化一、ThemeRoller二、使用方法1.基本操作面板介绍2.直接用现成的配色风格——Gallery画廊3.自定义风格——Roll Your Own4.下载风格包并应用到页面 一、ThemeRoller ThemeRoller是jQ…

欢乐钓鱼大师脚本,游戏托管一键操作!

欢迎来到《钓鱼大师乐趣无穷》&#xff01;这里是一片充满了乐趣和挑战的钓鱼天地。不论你是刚刚入门的小白&#xff0c;还是已经成为老手的大神&#xff0c;本攻略将为你揭示如何在游戏中获得成功&#xff0c;并针对稀有鱼类的钓鱼技巧进行详细介绍。 一、初探钓鱼的乐趣 在《…

GEE错误——image.reduceRegion is not a function

简介 image.reduceRegion is not a function 这里的主要问题是我们进行地统计分析的时候&#xff0c;我们的作用对象必须是单景影像&#xff0c;而不是影像集合 错误"image.reduceRegion is not a function" 表示你正在尝试使用reduceRegion()函数来处理图像数据&…

MySQL数据库—多表设计(有这一篇够!)

▐ 数据库设计范式 • 第一范式&#xff1a;确保每列保持原子性 ( 列不可再分解 ) 例如联系方式包括&#xff1a;电话/邮箱/微信... 那么我们设计表时就需要将它具体化 • 第二范式&#xff1a;要有主键&#xff0c;通过主键可以精确的定位到某行数据. 其他字段都依赖于主…

JAVA----Thread(2

Thread 提供的属性和方法 目录 Thread 提供的属性和方法一.构造方法1.Thread() :2.Thread(Runnable target) :3.Thread(String name) :main 线程 4.Thread(Runnable target, String name) : 二.属性1.ID (getId)2.名称(getName)3.状态(getState)4.优先级 (getPriority)5.是否后…