学习C++:数组

数组:

一,概述

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

特点1:数组中的每个数据元素都是相同的数据类型

特点2:数组是由连续的内存位置组成的

二,一维数组

1.一维数组定义方式

三种:

·数据类型 数组名 数组长度 ;

·数据类型 数组名 数组长度 = {值1,值2...};

如果初始化数据的时候,没有全部填写完,会用0来填补剩余的数据

·数据类型 数组名 = {值1,值2...};

定义数组的时候,必须有初始长度

总结1:数组名的命名规范与变量名规范一致,不要和变量重名

总结2:数组中下标是从0开始索引

2.一维数组数组名

一维数组名称的用途:

1.可以统计整个数组在内存中的长度

2.可以获取数组在内存中的首地址

数组名是常量,不可以进行赋值操作(即 arr = 100;是错误的)

3.冒泡排序

作用:最常用的排序算法,对数组内元素进行排序

·比较相邻的元素。如果第一个大于第二个,就交换它们两。

·对每一对相邻元素做同样的规工作,执行完毕后,找到第一个最大值。

·重复以上步骤,每次比较次数-1,直到不需要比较。

cpp 复制代码
#include <iostream>
using namespace std;

int main() {

	//利用冒泡排序实现升序序列
	int arr[9] = { 4,2,8,0,5,7,1,3,9 };
	cout << "排序前:" << endl;
	for (int i = 0; i < 9; i++)
	{
		cout << arr[i] << " ";
	}
	cout << endl;
	//开始冒泡排序
	for (int i = 0; i < 9 - 1; i++)
	{
		for (int j = 0; j < 9 - i - 1; j++)
		{
			//如果第一个数字大于第二个,则交换
			if (arr[j] > arr[j + 1])
			{
				int temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
	cout << "排序后:" << endl;
	for (int i = 0; i < 9; i++)
	{
		cout << arr[i] << " ";
	}
	cout << endl;

	system("pause");

	return 0;
}
相关推荐
FLJwu12 分钟前
运动相机图像传感器选型实战|第二篇:参数看着一模一样,为什么骑行录像疯狂果冻、拖影翻车?
android·c语言·开发语言·数码相机·运动相机·oem 量产
驭渊的小故事13 分钟前
从 JVM 底层看泛型:泛型擦除、Signature 属性与 Super Type Token 模式
java·开发语言·jvm
Escalating_xu17 分钟前
【C语言项目实战】贪吃蛇(下):移动、碰撞与计分,完成一局可玩的游戏
c语言·开发语言·游戏
火22523 分钟前
# C++ 微服务即时通讯系统(三):网关设计——HTTP 请求、Session 鉴权与 WebSocket 通知上一篇
c++·http·微服务
qq_401700411 小时前
Qt Modbus 源码剖析:从 QModbusClient 到工业级通信框架
开发语言·qt·系统架构
星夜离尘561 小时前
MATLAB 角度解缠遇到丢样:先分段,再说明圈数为什么不可恢复
开发语言·matlab
我命由我123451 小时前
6-2.Python 异常处理 - 异常捕获(捕获指定异常、常见异常类型、异常信息)
java·运维·开发语言·python·http·https·java-ee
ZoeLandia1 小时前
React08:自定义 Hook
开发语言·前端·react.js·typescript
C++ 老炮儿的技术栈1 小时前
机器人的坐标,像 XYZ 的坐标值,是用单精度浮点还是用双精度浮点?
c语言·c++·人工智能·单片机·c
zaizai10071 小时前
STL深度剖析2
java·c++·算法