news 2026/6/10 21:53:18

13. 数组

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
13. 数组

1.数组简介

2.数组的访问与遍历

3.多维数组

4.数组的注意事项


1.数组简介

1).数组简介 数组是C++中一种"存储相同数据类型元素的连续内存集合",可以把它想象成一排编号的储物柜:每个储物柜(数组元素)类型 相同,有唯一的编号(下标),且位置连续 a.数组的大小在定义时必须确定,且一旦定义就无法修改(固定长度)b.数组下标从0开始,例如长度为5的数组,下标范围是0~4
2).数组声明和初始化 a.数组声明// 语法:数据类型 数组名[数组长度];intarr[5];// 声明一个能存储5个int类型元素的数组b.数组初始化#include <iostream>usingnamespacestd;intmain(){// 方式1:完全初始化(指定所有元素)intarr1[5]={1,2,3,4,5};// 方式2:部分初始化(未初始化的元素自动置0)intarr2[5]={1,2};// 结果:[1,2,0,0,0]// 方式3:省略长度(编译器根据初始化列表自动计算长度)intarr3[]={10,20,30};// 长度为3// 方式4:C++11及以上支持的空初始化(所有元素置0)intarr4[5]={};// 结果:[0,0,0,0,0]return0;}

2.数组的访问与遍历

1).单个元素访问 通过"数组名[下标]访问",注意"下标不能越界"
#include <iostream>usingnamespacestd;intmain(){intarr[5]={1,2,3,4,5};cout<<arr[0]<<endl;// 输出第一个元素:1cout<<arr[3]<<endl;// 输出第四个元素:4// 修改元素arr[2]=99;cout<<arr[2]<<endl;// 输出:99// 错误示例:下标越界(arr只有5个元素,下标最大为4)// cout << arr[5] << endl; // 未定义行为,程序可能崩溃return0;}

2).最常用的是for循环,C++11及以上还支持范围for循环#include <iostream>usingnamespacestd;intmain(){intarr[5]={1,2,3,4,5};// 方式1:普通for循环(通过下标遍历)cout<<"普通for循环遍历:"<<endl;for(inti=0;i<5;i++){// i从0到4,覆盖所有下标cout<<arr[i]<<" ";}cout<<endl;// 输出:1 2 3 4 5// 方式2:范围for循环(C++11及以上)cout<<"范围for循环遍历:"<<endl;for(intnum:arr){// 自动遍历arr的每个元素,num是元素值cout<<num<<" ";}cout<<endl;// 输出:1 2 3 4 5return0;}

3.多维数组

二维数组可以理解为"数组的数组",比如一个34列的表格:#include <iostream>usingnamespacestd;intmain(){// 声明并初始化3行4列的二维数组intmatrix[3][4]={{1,2,3,4},// 第一行{5,6,7,8},// 第二行{9,10,11,12}// 第三行};// 遍历二维数组(嵌套for循环)for(inti=0;i<3;i++){// 遍历行for(intj=0;j<4;j++){// 遍历列cout<<matrix[i][j]<<" ";}cout<<endl;// 每行结束换行}return0;}

4.数组的注意事项

1).数组长度必须是常量(不能用变量定义,C++11的constexpr除外)intn=5;// int arr[n]; // 错误:n是变量,C++标准不支持(部分编译器如GCC可能兼容,但不推荐)constintm=5;intarr[m];// 正确:m是常量
2).数组名本质是指向第一个元素的指针intarr[5]={1,2,3};cout<<*arr<<endl;// 输出第一个元素:1(*arr等价于arr[0])
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 20:55:29

力科 HVD3605 LECROY HVD3605A示波器高压差分探头

HVD3605 是一款由 Teledyne LeCroy 生产的 高压差分探头 &#xff0c;主要用于测试和测量高电压环境下的电气信号。‌基本参数和规格 ‌电压范围‌&#xff1a;HVD3605可以安全测试8485V&#xff08;DC pk AC&#xff09;和6000 Vrms电压&#xff0c;覆盖5kV等级的电气装置和功…

作者头像 李华
网站建设 2026/6/9 22:18:35

【小程序毕设源码分享】基于springboot+小程序的健康生活助手的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/6/10 13:32:34

华为OD机试真题精讲:乘坐保密电梯(Python/Java/C++多语言实现)

华为OD机试真题精讲:乘坐保密电梯(Python/Java/C++多语言实现) 一、题目描述(2025B卷高频100分题) 保密电梯的访问权限通过数字密码控制,密码规则如下: 密码是一个无重复数字的4位数(范围:1000~9999),且每位数字互不相同; 每次输入密码后,系统会返回两个提示值:…

作者头像 李华
网站建设 2026/6/10 15:49:41

【小程序毕设全套源码+文档】基于微信小程序的健康生活助手设计与实现(丰富项目+远程调试+讲解+定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/6/10 15:47:47

《道德经》第七十八章 正言若反

《道德经》第七十八章&#xff1a;正言若反 这是《道德经》中最经典的辩证智慧章节之一。老子以“水”为喻&#xff0c;深刻揭示了“柔弱胜刚强”的道理&#xff0c;并以“正言若反”作结&#xff0c;点明真正的真理往往听起来像反话、逆耳之言。 原文&#xff08;王弼本通行…

作者头像 李华