【C++】数组

1.概述

所谓数组,就是一个集合,该集合里面存放了相同类型的数据元素。

数组特点:

(1)数组中的每个数据元素都是相同的数据类型。

(2)数组是有连续的内存空间组成的。

2、一维数组

2.1维数组定义的三个方式:

(1)数据类型 数组名[数组长度];

(2)数据类型 数组名[ 数组长度]={值1,值2...};

(3)数据类型 数组名[ ] ={值1,值2,...};

注意:数组中元素的下表是从0开始的。

示例:

第一种定义方式:数据类型 数组名[数组长度];

第二种定义方式:数据类型 数组名[ 数组长度]={值1,值2...};

第三种定义方式:数据类型 数组名[ ] ={值1,值2,...};

总结:

(1)数组名的命名规范与变量的命名规范一致。

(2)数组中下标是从0开始的。

2.2 练习一---最大值

案例:五只小猪称体重,在一个数组中记录五只小猪的体重,如:int arr[5]={300,350,200,400,250};找出并打印最重的小猪体重。

代码:

//案例--五只小猪称体重

#include<iostream>

using namespace std;

int main()

{

//创建5只小猪体重的数组

int weight[5] = { 300,500,200,400,250 };

//在数组中找到最大值

int max = 0;//假设最大值为0

for (int i = 0; i < 5; i++)

{

if (weight[i] > max)

{

max = weight[i];

}

}

//打印体重最大值

cout << "最重的小猪体重为:" << max << endl;

system("pause");

return 0;

}

2.3 练习二---数组元素逆置

请声明一个5个元素的数组,并且将元素逆置。如:原数组元素为1,3,2,5,4逆置后输出结果为:4,5,2,3,1。

代码:

//一维数组案例---数组元素逆置

#include<iostream>

using namespace std;

int main()

{

// 1.创建数组

int arr[5] = { 1,3,2,4,5 };

cout << "数组逆置前:" << endl;

for (int i = 0; i < 5; i++)

{

cout << arr[i] << " ";

}

cout << endl;

//实现逆置

int start = 0;//数组首元素起始下标

int end = sizeof(arr) / sizeof(arr[0]) - 1;

while (start < end)

{

int temp = arr[start];

arr[start] = arr[end];

arr[end] = temp;

start++;

end--;

}

cout << "数组逆置后:" << endl;

for (int i = 0; i < 5; i++)

{

cout << arr[i] << " ";

}

cout << endl;

system("pause");

return 0;

}

相关推荐
Jonathan Star14 分钟前
MediaPipe 在Python中实现人体运动识别,最常用且高效的方案是结合**姿态估计**(提取人体关键点)和**动作分类**(识别具体运动)
开发语言·python·分类
滨HI027 分钟前
C++ opencv拟合直线
开发语言·c++·opencv
沐浴露z37 分钟前
详解JDK21新特性【虚拟线程】
java·开发语言·jvm
艾莉丝努力练剑1 小时前
【C++:红黑树】深入理解红黑树的平衡之道:从原理、变色、旋转到完整实现代码
大数据·开发语言·c++·人工智能·红黑树
No0d1es1 小时前
电子学会青少年软件编程(C/C++)1级等级考试真题试卷(2025年9月)
java·c语言·c++·青少年编程·电子学会·真题·一级
l1t1 小时前
利用DeepSeek优化SQLite求解数独SQL用于DuckDB
开发语言·数据库·sql·sqlite·duckdb
_OP_CHEN1 小时前
C++进阶:(七)红黑树深度解析与 C++ 实现
开发语言·数据结构·c++·stl·红黑树·红黑树的旋转·红黑树的平衡调整
硅农深芯1 小时前
如何使用ptqt5实现进度条的动态显示
开发语言·python·qt
kyle~2 小时前
计算机系统---USB的四种传输方式
运维·c++·计算机系统
Lhan.zzZ2 小时前
Qt数据可视化实战:饼图、线图与表格的完整指南
开发语言·qt·信息可视化