C语言数组入门基础

news/2025/3/20 7:42:19/

数组是一组有序的、类型相同的数据的集合,这些数据被称为数组的元素。

概念理解:

      数组用于存储一组数据

      数组里面存储的数据类型必须是相同的

      数组在内存中会开辟一块连续的空间

C99的标准之前,当数组在创建时,方括号内的数组元素个数只能是常量,使用的常量也必须是真正意义上的常量,比如用const修饰的变量有了常属性,但不是真正意义的常量,而由define定义的常量可以用来做数组元素个数。而C99之后数字方括号内的元素可以使用变量,而使用变量的做数组元素个数的数组,叫做变长数组。

int arr[10] = {0};
for(int i = 0;i < 10;i++)
{scanf("%d",&arr[i];
}char str[10] = {0};
scanf("%s",str);//字符串赋值可以不取地址和循环

一维数组的元素地址是连续的,也就是元素的地址一个紧挨着一个。地址在内存是以二进制进行存储的,但是如果以二进制来展示的话就会非常的长而且也未必好理解,所以就由十六进制来进行展示。(下图)观察下图可发现,地址的是由低到高随着下标增长而增长的,有规律的递增,且每个数组元素地址都相差了四个字节,相差的四个字节是一个int整形的空间大小。


int arr[3][3] = {1,2,3,4};//4自动存到arr[1][0]的位置
int arr[3][3] = {{1,2,3},{4,5,6},{7,8,9}};//一个大括号代表一行,每个大括号以逗号隔开
int arr[][3] = {0};//二维数组可以不初始化行,但必须初始化列

二维数组在我们的逻辑概念中可以是一个矩阵,但在内存中与一维数组一样是一个连续的地址空间。通常我们将二维数组的第一个方括号看做行,第二个方括号看做是列。

二维数组的创建和初始化

二维数组与一维数组只是多加了一个方括号。数据类型 + 数组名[元素个数][元素个数];

二维数组的赋值

给二维数组赋值,与一维数组一样都需要循环来搞定,但是二维数组需要在一维数组的循环基础上再嵌套一层循环。


任意一个数组不管有多复杂,它都只有两个组成部分

第一部分:说明这是一个数组并确定元素的个数以及数组名字

第二部分:确定该数组中每一个元素所存放的数据类型


http://www.ppmy.cn/news/195693.html

相关文章

魅蓝5s的android系统版本,魅蓝5s(全网通)

2月15日魅族发布了鸡年新款手机---魅蓝5s&#xff0c;被冠以s的命名方式显然他不是一个大幅度升级的手机&#xff0c;一般都是小幅度调整和变化一方面是更适应消费需求&#xff0c;另一方面是厂商从自身角度考虑的。魅蓝5s究竟都有那些变化和调整呢&#xff1f; 首先最主要的也…

魅蓝Note7Android7,魅蓝Note6和魅族PRO7哪个好?魅族Pro7和魅蓝Note6的区别 (全文)

今年5月份&#xff0c;魅族正式拆分为魅族、魅蓝、Flyme三大事业部&#xff0c;这意味着魅蓝手机将从魅族系独立出来。近日&#xff0c;魅族也先后发布了魅族PRO7年度旗舰和魅蓝Note6千元手机&#xff0c;其中前者因万年联发科处理器&#xff0c;偏高的价格&#xff0c;备受吐槽…

C语言基础应用(六)数组

引言 现程序要求&#xff0c;录入班里60名同学的所有成绩&#xff0c;我们应该怎么录入呢&#xff1f;按照我们之前所学习的难道要声明60个变量来录入成绩嘛&#xff1f; 就像&#xff1a; int main() {int a1,a2,a3,...,a60;scanf("%d%d%d...%d",&a1,&a2,…

魅蓝x android,魅蓝X后盖怎么打开?魅蓝X打开更换后盖方法图解

魅蓝X作为一款最美魅蓝手机&#xff0c;魅蓝X拥有流光金、幻影蓝、珠光白、曜石黑多种后盖颜色可选。现在问题来了&#xff0c;魅蓝X后盖能换吗&#xff1f;怎么打开呢&#xff1f;对于后期需要换后盖或者想要看看内部结构、做工、拆机的朋友&#xff0c;下面脚本之家的小编今天…

魅蓝note6Android怎么升级,魅蓝Note6拆解:首款双摄青年良品做工如何?

【PConline 拆解】2016年魅蓝是整个手机市场一个无法忽视的焦点,在每月一场的演唱会中推出了共10款魅蓝产品,让人目不暇接。2017年魅蓝回归理性,更加专注,这一点在魅蓝Note6上很好地体现了出来。 煤油们期待已久的高通处理器、更加精细打磨的6系铝合金机身、旗舰级全像素双…

C 语言零基础入门教程(七)

C 运算符 运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C 语言内置了丰富的运算符&#xff0c;并提供了以下类型的运算符&#xff1a; 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 杂项运算符 本章将逐一介绍算术运算符、关系运算符、逻辑运算符、位运算…

C语言——数组(详解)

C语言数组详解 文章目录 C语言数组详解1.一维数组的创建与初始化1.1.什么是数组?1.2一维数组的创建1.2.数组的初始化 2.一维数组的使用2.1一维数组的使用2.2.字符串与字符数组的区别 3.一维数组在内存中的存储4.二维数组的创建以及初始化4.1二维数组的创建4.2二维数组的初始化…

C语言——数组【详解】

文章目录 1. 一维数组的创建和初始化1.1 数组的创建1.2 数组的初始化1.3 一维数组的使用1.4 一维数组在内存中的存储 2. 二维数组的创建和初始化2.1 二维数组的创建2.2 二维数组的初始化2.3 二维数组的使用2.4 二维数组在内存中的存储 3. 数组越界4. 数组作为函数参数4.1 冒泡排…