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

从入门到精通,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(判断条件);

总结 

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

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

相关文章:

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

目录 Everyday English 前言 数组 数组的概念 数组的定义 数组的下标 for循环 循环是什么 基本格式 多重循环 while循环 do-while循环 总结 Everyday English To shine , not be illuminated. 去发光&#xff0c;而不是被照亮。 前言 好久不见&#xff0c…...

Python 编程基础 | 第五章-类与对象 | 5.2、数据成员

一、数据成员 数据成员是指类中定义的变量&#xff0c;即属性&#xff0c;根据定义位置&#xff0c;又可以分为类属性和实例属性&#xff0c;下面分别进行介绍。 1、实例属性 实例属性是指定义在类的方法中的属性&#xff0c;该属性属于当前实例&#xff0c;例如&#xff1a;…...

PHP 个人愿望众筹网站系统mysql数据库web结构apache计算机软件工程网页wamp

一、源码特点 PHP 个人愿望众筹网站系统是一套完善的web设计系统&#xff0c;对理解php编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。 php 个人愿望众筹网站 代码 https://download.csdn.net/download/qq_41221322/8…...

JS--判断空值(null、undefined、NaN、false、空字符串等)

原文网址&#xff1a;JS--判断空值(null、undefined、NaN、false、空字符串等)_IT利刃出鞘的博客-CSDN博客 简介 本文介绍JavaScript判断空值的方法。 空值包括&#xff1a;undefined&#xff0c;null&#xff0c;NaN&#xff0c;&#xff0c;false&#xff0c;{}&#xff0…...

ChatGPT 背后包含了哪些技术?

ChatGPT 是由OpenAI开发的一款基于GPT-3&#xff08;Generative Pre-trained Transformer 3&#xff09;的人工智能语言模型。这个模型是使用多种编程语言和技术组合编写的。 首先&#xff0c;ChatGPT 使用了 Python 作为主要的编程语言。Python 是一种流行的高级编程语言&…...

Vue Router(二)

目录 一、嵌套路由 1、路由定义 2、代码例子 3、重定向 二、懒加载 1、缘由 2、代码例子 三、导航守卫 1、全局前置守卫 2、全局后置守卫 3、meta元信息 四、生命周期 1、解释 2、执行顺序 3、例子 五、keep-alive组件缓存&#xff08;保活&#xff09; 1、介…...

ELK整合springboot(第二课)

一、创建一个springboot的项目 pom文件如下&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLo…...

运维常见的22个故障排查和10个问题解决技巧大汇总!

作为运维&#xff0c;多多少少会碰见这样那样的问题或故障&#xff0c;从中总结经验&#xff0c;查找问题&#xff0c;汇总并分析故障的原因&#xff0c;这是一个运维工程师良好的习惯。每一次技术的突破&#xff0c;都经历着苦闷&#xff0c;伴随着快乐&#xff0c;可我们还是…...

解决 TensorFlow 2.x 中的 “AttributeError: module ‘tensorflow‘ has no attribute ‘placeholder‘“ 错误

项目场景&#xff1a; 在使用 TensorFlow 框架实现深度学习应用时&#xff0c;可能会遇到以下错误&#xff1a; AttributeError: module tensorflow has no attribute placeholder问题描述 在 TensorFlow 1.x 版本中&#xff0c;placeholder 函数用于创建占位符张量。然而&a…...

新风机注意事项有哪些?

选择和使用新风机时&#xff0c;有几个关键注意事项需要牢记&#xff1a; 安装位置&#xff1a;新风机的安装位置很重要。通常情况下&#xff0c;应将其安装在室外以避免室内产生噪音和减少室内的体积占据。确保选择合适的安装位置&#xff0c;以便新风机能够顺利引入新鲜空气。…...

GitHub基础

1、仓库是什么意思&#xff1f;仓库拥有者是谁&#xff1f; 在软件开发或版本控制系统中&#xff0c;"仓库"&#xff08;Repository&#xff09;是指存储项目代码、配置文件、文档等相关文件的地方。它可以看作是一个中央存储库&#xff0c;用于管理和跟踪项目的各个…...

读书笔记--未来简史关键金句和阅读感悟

借着国庆假期&#xff0c;终于有时间研读了尤瓦尔.赫拉利的《未来简史》&#xff0c;作者的写作方式、文笔、观察视角都是我喜欢的类型&#xff0c;作者从古到今&#xff0c;谈到了上帝、神、宗教、科技、生物、智人到未来的超人智神&#xff08;数据主义&#xff09;&#xff…...

【Vue2.0源码学习】生命周期篇-销毁阶段(destroy)

文章目录 1. 前言2. 销毁阶段分析3. 总结 1. 前言 接下来到了生命周期流程的最后一个阶段——销毁阶段。从官方文档给出的生命周期流程图中可以看到&#xff0c;当调用了vm.$destroy方法&#xff0c;Vue实例就进入了销毁阶段&#xff0c;该阶段所做的主要工作是将当前的Vue实例…...

代理IP与Socks5代理在多领域的卓越应用

随着数字化时代的到来&#xff0c;网络工程师在跨界电商、爬虫、出海业务、网络安全和游戏等多个领域中扮演着至关重要的角色。在这些领域中&#xff0c;代理IP与Socks5代理技术已经成为网络工程师的得力助手&#xff0c;本文将深入探讨它们在技术世界中的卓越应用。 1. 跨界电…...

kafka怎么实现零拷贝(Zero-Copy)的?

Kafka 实现零拷贝&#xff08;Zero-Copy&#xff09;主要依赖于操作系统和底层网络库的支持&#xff0c;而不是特定的算法。这是因为零拷贝是一种优化数据传输的技术&#xff0c;通常是通过操作系统和硬件来实现的。以下是 Kafka 如何实现零拷贝的一般原理&#xff1a; 直接内存…...

Hive【Hive(四)函数-单行函数】

函数 函数简介 方便完成我们一些复杂的操作&#xff0c;就好像我们 Spark 中的 UDF 函数&#xff0c;避免用户反复写逻辑。 Hive 提供了大量的内置函数&#xff0c;主要可以分为以下几类&#xff1a; 单行函数聚合函数炸裂函数窗口函数 下面的命令可以查看内置函数的相关…...

C语言学生成绩录入系统

一、系统概述 该系统是一个由链表创建主菜单的框架&#xff0c;旨在快速创建学生成绩录入系统的主菜单结构。其主要任务包括&#xff1a; 实现链表的创建、插入和遍历功能&#xff0c;用于存储和展示学生成绩录入系统各个模块的菜单项。 2. 提供用户友好的主菜单界面&#xf…...

操作系统对内存的管理:分配与回收,虚拟内存,内存容量的扩充,内存保护,补充(链接方式、装入方式)

内存&#xff1a;即内存条&#xff0c;也称主存储器&#xff08;简称主存&#xff09;&#xff0c;用于存放数据。 为了缓和CPU和外存&#xff08;磁盘&#xff09;的速度矛盾&#xff0c;外存的程序先放入内存才能被CPU处理。 内存地址从0开始&#xff0c;每个内存地址对应一…...

[开源]基于Vue的拖拽式数据报表设计器,为简化开发提高效率而生

一、开源项目简介 Cola-Designer 是一个 基于VUE&#xff0c;实现拖拽 配置方式生成数据大屏&#xff0c;为简化开发、提高效率而生。 二、开源协议 使用GPL-2.0开源协议 三、界面展示 概览 部分截图&#xff1a; 四、功能概述 特性 0 代码 实现完全拖拽 配置式生成…...

微信小程序——CSS3渐变

SS3 渐变&#xff08;gradients&#xff09;可以在两个或多个指定的颜色之间显示平稳的过渡。CSS3 定义了两种类型的渐变&#xff08;gradients&#xff09;&#xff1a; 说明 1、线性渐变&#xff08;Linear Gradients&#xff09;- 向下/向上/向左/向右/对角方向&#xff1…...

AI代码库合规审计完整指南:5步自动化审查流程揭秘

AI代码库合规审计完整指南&#xff1a;5步自动化审查流程揭秘 【免费下载链接】Tutorial-Codebase-Knowledge Pocket Flow: Codebase to Tutorial 项目地址: https://gitcode.com/gh_mirrors/tu/Tutorial-Codebase-Knowledge 在当今快速发展的软件开发环境中&#xff0c…...

GraphGym高级特性:动态图学习与多任务图神经网络

GraphGym高级特性&#xff1a;动态图学习与多任务图神经网络 【免费下载链接】GraphGym Platform for designing and evaluating Graph Neural Networks (GNN) 项目地址: https://gitcode.com/gh_mirrors/gr/GraphGym GraphGym是一个强大的图神经网络&#xff08;GNN&am…...

开源漏洞情报自动化分诊系统:从数据采集到智能响应的工程实践

1. 项目概述&#xff1a;一个为开源安全情报而生的“智能爪子”如果你和我一样&#xff0c;长期混迹在开源软件和网络安全社区&#xff0c;那你一定对“漏洞情报”这个词不陌生。每天&#xff0c;成千上万的开源项目在更新&#xff0c;新的漏洞&#xff08;CVE&#xff09;在发…...

AKTools深度解析:3分钟构建跨语言金融数据API的实战指南

AKTools深度解析&#xff1a;3分钟构建跨语言金融数据API的实战指南 【免费下载链接】aktools AKTools is an elegant and simple HTTP API library for AKShare, built for AKSharers! 项目地址: https://gitcode.com/gh_mirrors/ak/aktools AKTools是一款为AKShare开源…...

Habitat-Lab具身AI仿真平台:从核心概念到实战部署全解析

1. 项目概述&#xff1a;从零开始理解Habitat-Lab 如果你正在研究具身智能&#xff0c;或者对如何让AI在三维物理世界里“学会做事”感到好奇&#xff0c;那你大概率已经听说过Habitat-Lab这个名字。它不是一个游戏引擎&#xff0c;也不是一个单纯的机器人仿真器&#xff0c;而…...

无代码构建AI智能体:Databerry实战指南与RAG应用解析

1. 项目概述&#xff1a;告别代码&#xff0c;用Databerry构建专属AI智能体如果你对AI聊天机器人感兴趣&#xff0c;但又觉得从零开始写代码、调模型、处理向量数据库这些事太麻烦&#xff0c;那Databerry这个项目可能就是为你准备的。简单来说&#xff0c;Databerry是一个“无…...

OpenClaw性能调优实战:从监控到压测的全链路优化指南

1. 项目概述&#xff1a;从开源项目到性能调优的实战指南最近在社区里看到不少朋友在讨论一个名为“openclaw”的开源项目&#xff0c;尤其是在性能优化方面遇到了不少挑战。这个项目本身是一个功能强大的工具或框架&#xff0c;但在实际部署和运行时&#xff0c;很多开发者发现…...

PySpark 安装全过程总结

而是典型的&#xff1a;Windows 多开发环境下的大数据环境冲突问题。整个过程里&#xff0c;你实际上同时涉及了&#xff1a;Java Python Conda PySpark PyCharm Windows PATH Socket通信而&#xff1a;PySpark 本质上又是&#xff1a;Python JVM(Java) 的混合体系。所以&…...

CircuitPython嵌入式开发实战:内存管理与无线连接优化指南

1. 项目概述与核心价值如果你和我一样&#xff0c;从传统的Arduino C/C开发转向更友好的微控制器编程&#xff0c;那么CircuitPython绝对是一个让人眼前一亮的发现。它把Python的简洁和强大带到了像Adafruit Feather、Raspberry Pi Pico这样的嵌入式硬件上&#xff0c;让快速原…...

【C#vsPython·第一阶段】int、string、bool?Python 的类型世界有点不一样

在 C# 里&#xff0c;int 最大能表示 2,147,483,647&#xff08;约 21 亿&#xff09;。超过这个数&#xff1f;对不起&#xff0c;溢出了&#xff0c;你得用 long。在 Python 里&#xff1f;2 ** 100 直接算&#xff0c;连眼都不眨一下。Python 的 int 没有上限&#xff0c;想…...