C语言——数组

1.数组的概念

数组是一组相同类型元素的集合;

数组中可以存放1个或多个元素,但数组元素个数不能为0。

同时数组可以分为一维数组和多维数组,多维数组一般常见 是二维数组。

2.一维数组的创建和初始化

一维数组的创建的基本语法:

type arr_name[常量值];

注:

type:数组元素的类型;

arr_name:数组的名称;

\]: 存放数组元素的个数 ![fd9c69bbb4814b0eb25ce5362bead29f.png](https://i-blog.csdnimg.cn/direct/fd9c69bbb4814b0eb25ce5362bead29f.png) 一维数组的初始化: ![084d5d7dbe114c1eb246b2afd27e1797.png](https://i-blog.csdnimg.cn/direct/084d5d7dbe114c1eb246b2afd27e1797.png) #### 3.一维数组的使用 1.数组下标 C语言规定数组是有下标的,下标从0开始,假设数组有n个元素,最后一个元素的下标是n-1,下标就相当于数组元素的编号,如下: ![6d77620c1a6f438dacf5968f9136a586.png](https://i-blog.csdnimg.cn/direct/6d77620c1a6f438dacf5968f9136a586.png) ![1e86fab6143049588a6d590b6dddbca7.png](https://i-blog.csdnimg.cn/direct/1e86fab6143049588a6d590b6dddbca7.png) 在C语⾔中数组的访问提供了⼀个操作符 \[\] ,这个操作符叫:下标引⽤操作符。 有了下标访问操作符,我们就可以轻松的访问到数组的元素了,⽐如我们访问下标为7的元素,我们就可以使⽤ arr\[7\] ,想要访问下标是3的元素,就可以使⽤ arr\[3\] ,如下代码: ![f358955af7a74e24b4bd8b20009f4642.png](https://i-blog.csdnimg.cn/direct/f358955af7a74e24b4bd8b20009f4642.png) 2.数组元素的输入和打印 只要我们产⽣数组所有元素的下标就可以了,那我们使⽤for循环产⽣0\~9的下标,接下来使⽤下 标访问就行了。 ![845a29dd00f44f1e8bd84283bd0478e6.png](https://i-blog.csdnimg.cn/direct/845a29dd00f44f1e8bd84283bd0478e6.png) #### 4.二维数组的创建 概念:数组的元素都是内置类型的,如果我们把⼀维数组做为数组的元素,这时候就是⼆维数组,⼆维数组作为数组元素的数组被称为三维数组,⼆维数组以上的数组统称为多维数组。 ![7c117896a1fc4bf387f29dacf8a5b9fb.jpeg](https://i-blog.csdnimg.cn/direct/7c117896a1fc4bf387f29dacf8a5b9fb.jpeg) type arr_name\[常量值1\]\[常量值2\]; 例如: int arr\[3\]\[5\]; double data\[2\]\[8\]; #### 5.二维数组的初始化 ![e0bc1671f3b844ac8202d62856bf26bb.png](https://i-blog.csdnimg.cn/direct/e0bc1671f3b844ac8202d62856bf26bb.png) ![bb104b90d3ae40f6b07e178967e3921e.png](https://i-blog.csdnimg.cn/direct/bb104b90d3ae40f6b07e178967e3921e.png) 注:初始化是可以省略行,但是不能省略列; #### 6.二维数组的使用 和一维数组同理运用下标,二维数组行的下标和列的下标都是从0开始的; ![8a2a23ff9fd6429ea1cc5e768164e244.png](https://i-blog.csdnimg.cn/direct/8a2a23ff9fd6429ea1cc5e768164e244.png) ![c3b70e186695417190cf8e95fc3a298e.png](https://i-blog.csdnimg.cn/direct/c3b70e186695417190cf8e95fc3a298e.png) 1.二维数组的输入和输出 ![8730732e771b493baf6427b764268bf4.png](https://i-blog.csdnimg.cn/direct/8730732e771b493baf6427b764268bf4.png) #### 7.小练习:二分查找 在⼀个升序的数组中查找指定的数字n,很容易想到的⽅法就是遍历数组,但是这种⽅法效率⽐较低。⽐如我买了⼀双鞋,你好奇问我多少钱,我说不超过300元。你还是好奇,你想知道到底多少,我就让你猜,你会怎么猜?你会1,2,3,4...这样猜吗?显然很慢;⼀般你都会猜中间数字,⽐如:150,然后看⼤了还是⼩了,这就是⼆分查找,也叫折半查找。 ![a93ad620bc0e4bb4bd8b390101bd61c2.png](https://i-blog.csdnimg.cn/direct/a93ad620bc0e4bb4bd8b390101bd61c2.png)

相关推荐
feifeigo123几秒前
python从环境变量和配置文件中获取配置参数
开发语言·python·adb
轩宇^_^几秒前
C语言结构体与联合体详解
c语言·开发语言
waterHBO4 分钟前
python 爬虫,爬取某乎某个用户的全部内容 + 写个阅读 app,慢慢读。
开发语言·爬虫·python
ahhhhaaaa-9 分钟前
【AI图像生成网站&Golang】部署图像生成服务(阿里云ACK+GPU实例)
开发语言·数据仓库·人工智能·后端·阿里云·golang
一只编程菜鸟15 分钟前
Java + easyexcel 新旧数据对比,单元格值标红
java·开发语言
fs哆哆1 小时前
在VB.net中,用正则表达式方法清除干扰符号方法
开发语言·正则表达式·c#·.net
嵌入式@秋刀鱼1 小时前
《 第三章-招式初成》 C++修炼生涯笔记(基础篇)程序流程结构
linux·开发语言·数据结构·c++·笔记·visual studio code
shenyan~1 小时前
关于 WASM: WASM + JS 混合逆向流程
开发语言·javascript·wasm
梦境虽美,却不长2 小时前
C语言 学习 文件操作(开关,读写,定位,大小)操作 2025年6月8日12:19:24
c语言·开发语言·学习
Charlotte_jc2 小时前
完美解决openpyxl保存Excel丢失图像/形状资源的技术方案
开发语言·python·excel·openpyxl