从入门到精通,30天带你学会C++【第七天:for循环和while循环以及数组的学习】(学不会你找我)

目录

Everyday English

前言

数组

数组的概念

数组的定义 

数组的下标 

for循环

循环是什么

基本格式

多重循环 

while循环

do-while循环

总结 


Everyday English

To shine , not be illuminated.

去发光,而不是被照亮。

前言

好久不见,也是应为要上学,停更了1个月,实在抱歉,希望大家能谅解,好了废话不多说,这应该是基础篇的最后一节课了,下面我会带你接触一些简单的题目和算法,你准备好了吗?

数组

数组的概念

首先你得理解数组是什么?数是数字的意思,而组是多个元素组合在一起,那数组不就是一个具有多个“苹果”的“抽屉”吗?

数组也分一维数组和二维数组,当然三维,四维也有,只不过我们通常情况下只会用到一维数组和二维数组。

一维数组有点像一条线,线上有很多点,每个点有不同的值,像下面的图一样:

而二维数组更像是矩阵,有着行坐标和列坐标,如下:

数组的定义 

知道了数组的概念,我们来看一看如何定义一个数组:

一维数组的定义方式如下:

int a[10];//定义了一个一维数组a,能存储10个元素,为整型

 二维数组的定义方式如下:

int a[10][10];//定义了一个二维数组a,能存储10x10个元素,为整型

数组的下标 

下标你可以理解为每个抽屉的编号,一维数组,从左至右依次编号,二维数组有行号和列号,在C++中,先行再列,既a[5][4]表示第五行,第四列的元素

注意:二维数组的下标是从0开始的 ,所以a[10]的一维数组下标其实是0-9

for循环

循环是什么

循环的意思很好理解,就是重复执行某件事,大家应该都知道Scratch里的重复执行吧,而C++只是用另一种语言去编写这个循环,基本功能是一样的。

基本格式

for(数据类型 变量名;终止条件;执行自增/自减/......)
{执行语句1;执行语句2;......
}

比如下面这个for循环,一共执行了n次,你可以拿一张草稿纸模拟一下

for(int i=1;i<=n;i++)
{......
}

多重循环 

for循环的里面/外面还可以在套一层for循环,当然更多层也可以,像Scratch一样:

如果把上面的积木块写成程序长这样:

for(int i=1;i<=10;i++)
{for(int j=1;j<=10;j++){for(int k=1;k<=10;k++){cout<<"Hello!"<<endl;}}
}

 那这个循环执行了多少次呢?答案是10x10x10=1000次

while循环

while循环和for循环基本差不多,作用都是重复执行一个或多个语句。

格式比for简单许多:

while(判断条件)
{执行语句;
}

其中如果想在循环过程中终止整个循环可以使用break语句,结束整个程序可以用return 0语句

除了while循环,还有do-while循环

do-while循环

do-while和while差不多,do-while语句是不管是否满足条件,都先执行一遍循环内部程序。而while循环从第一次起,必须满足条件才能执行语句。

do-while格式如下:

do
{执行语句;
}
while(判断条件);

总结 

本节课我们学习了循环及数组的知识,从下节课起,我们讲初步解决一些实际问题,以及一些基础算法,我会选取一些洛谷有代表性的题目给大家讲解。

最后认识一下,我是爱编程的小芒果,我们有缘再见!

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

6-3 递增的整数序列链表的插入 分数 5

List Insert(List L, ElementType X) {//创建结点List node (List)malloc(sizeof(List));node->Data X;node->Next NULL;List head L->Next; //定位real头指针//空链表 直接插入if (head NULL) {L->Next node;node->Next head;return L;}//插入数据比第…

Map,Set和哈希表的使用

目录 两种模型 Map的使用 Map接口方法的使用 注意事项 Set的使用 哈希表 冲突 如何避免冲突 在我们日常生活中,会进行一些查找操作,比如根据姓名查询考试成绩,根据姓名查询联系方式等在查找是进行一些插入和删除操作,即动态查找. 而Map和Set是一种适合动态查找的集合容…

Postman接口测试学习之常用断言

什么是断言&#xff1f; 断言——就是结果中的特定属性或值与预期做对比&#xff0c;如果一致&#xff0c;则用例通过&#xff0c;如果不一致&#xff0c;断言失败&#xff0c;用例失败。断言&#xff0c;是一个完整测试用例所不可或缺的一部分&#xff0c;没有断言的测试用例…

Linux登录自动执行脚本

一、所有用户每次登录时自动执行。 1、在/etc/profile文件末尾添加。 将启动命令添加到/etc/profile文件末尾。 2、在/etc/profile.d/目录下添加sh脚本。 在/etc/profile.d/目录下新建sh脚本&#xff0c;设置每次登录自动执行脚本。有用户登录时&#xff0c;/etc/profile会遍…

pnpm、npm、yarn 包管理工具『优劣对比』及『环境迁移』

前言 博主在开发前端网站的时候&#xff0c;发现随着开发的项目的逐渐增多&#xff0c;安装的依赖包越来越臃肿&#xff0c;依赖包的安装速度也是非常越来越慢&#xff0c;多项目开发管理也是比较麻烦。之前我就了解过 pnpm&#xff0c;但是当时担心更换包管理环境可能会出现的…

文本自动输入/删除的加载动画效果

效果展示 CSS 知识点 绕矩形四周跑的光柱动画实现animation 属性的 steps 属性值运用 页面基础结构实现 <div class"loader"><!-- span 标签是围绕矩形四周的光柱 --><span></span><span></span><span></span>&l…

自动驾驶学习笔记(二)——Apollo入门

#Apollo开发者# 学习课程的传送门如下&#xff0c;当您也准备学习自动驾驶时&#xff0c;可以和我一同前往&#xff1a; 《自动驾驶新人之旅》免费课程—> 传送门 《2023星火培训【感知专项营】》免费课程—>传送门 文章目录 前言 Ubuntu Linux文件系统 Linux指令…

智能穿戴领域,健康鞋步力宝品牌引领新商业模式发展

智能时代正在将我们带向一个从学习驱动到全面普及的新境界。这个趋势的深远影响不仅改变了我们的生活方式&#xff0c;更改变了我们对智能的理解。当今的智能穿戴&#xff0c;已经越来越成为更多人日常生活的必需品&#xff0c;不论是日常佩戴无感成为腕上伴侣&#xff0c;还是…

建立HTTP代理IP池的技术和工具支持

目录 一、认识HTTP代理 二、选择代理协议 三、建立HTTP代理IP池的技术和工具支持 总结 在当今的互联网应用中&#xff0c;许多场景需要使用到代理IP&#xff0c;例如网络爬虫、浏览器自动化、API请求等。代理IP可以帮助我们在进行网络请求时隐藏我们的真实IP地址&#xff0…

美国各流域边界下载,并利用arcgis提取与处理

一、边界数据的下载 一般使用最普遍的流域边界数据是从HydroSHEDS官网下载: HydroBASINS代表一系列矢量多边形图层&#xff0c;以全球尺度呈现次级流域边界。该产品的目标是提供一种无缝的全球覆盖&#xff0c;其中包含了不同尺度&#xff08;从数十到数百万平方千米&#xf…

sylar高性能服务器-日志(P1-P6)代码解析+调试分析

文章目录 一、整体结构二、LogEvent三、LogLevel四、LogFormatter五、LogAppender六、Logger七、调试7.1调试步骤7.2尝试使用gdb调试 八、附录8.1log.h8.2log.cc8.3test.cc8.4Cmakelists.txt8.4Cmakelists.txt ​ 本篇文章主要针对一下sylar高性能服务器项目视频p1-p6的代码分析…

路由模式和打包优化

1. 路由模式-将路由改成history模式 hash模式带#&#xff0c;#后面的地址变化不会引起页面的刷新history没有#&#xff0c;地址变化会引起页面刷新&#xff0c;更符合页面地址的规范&#xff08;开发环境不刷新-webpack配置&#xff09;将路由模式修改成history模式-代码位置(s…