C语言数组

本文详细介绍了C语言中一维整型数组、二维整型数组、多维数组以及字符型数组的定义、元素访问、内存分配、初始化方法,以及字符串操作函数如strlen、strcpy、strcat和strcmp的应用。
摘要由CSDN通过智能技术生成

数组

一组类型相同的有限个元素的集合

分类:一维数组,二维数组,多维数组

一.一维整型数组

1.定义形式

数组类型  数组名[元素个数];

注:元素个数必须为常量或常量表达式,不能是变量或变量表达式

2.元素访问

数组名  [元素下标];

元素下标:0——元素个数–1

可以用变量,常量或表达式访问

注:不能越界访问

3.数组的初始化

定义数组时对元素赋初值

(1)全部初始化

所有数组元素都可以得到初值

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

(2)局部初始化

给定一部分元素的值,没有给定初值的元素,默认初始化为0

int a[5]={0};

(3)默认初始化

不给定数组元素个数,通过初值元素个数决定数组元素个数

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

4.内存空间

数组所占空间大小=数据类型所占空间大小*元素个数

连续性:数组所占空间连续

有序性:数组空间存放顺序有序

获得数组元素个数:sizeof(a)/sizeof(a[0])

二.二维整型数组

1.定义

数组类型 数组名[行数][列数];

2.元素访问

3.元素初始化

(1)全部初始化

(2)局部初始化

(3)默认初始化

行能省略,列不能省略

4.存储

数组所占空间大小=数据类型所占空间大小*行数*列数

sizeof(a)/sizeof(a[0][0]);

三.多维数组

N维数组可以理解成是由N–1维数组构成的一维数组

四.字符型数组

1.使用场景

C语言中没有字符串类型,也无法定义字符串变量,只能通过字符型数组,每个元素存放一个字符,最终存放字符串

2.定义

3.初始化

(1)全部初始化

(2)局部初始化

(3)默认初始化

4.存储

字符型数组所占字节=元素个数

5.字符串的输入和输出

输入:scanf(\"%s\",str);

        gets(str);

输出:printf(\"str=%s\\n\",str);               

       puts(str);

6.字符串常见的操作函数

(1)strlen

获得字符串的长度

字符串开头到离开头最近的\0之间的字符个数,不包括\0

注:strlen  获得字符串的长度

    sizeof  获得字符串或数组在内存所占字节数

(2)strcpy

字符串的拷贝

strcpy(str,"hello world");

注:目的空间一定要足够大存放的下原字符串

(3)strcat

字符串的拼接,在第一个字符串末尾拼接上第二个字符串

注:第一个字符串空间要足够大

(4)strcmp

字符串的比较

如果两个字符串相同,结果为0

第一个>第二个,结果为>0的值

第一个<第二个,结果为<0的值

两个字符串比较,从左到右每个字符进行比较,不相同的字符,谁的ASCII码值大,字符串就大

五.二维字符型数组

1.定义

char str[5][32];

2.存储

连续性

有序性

3.初始化

char str[5][32]={0};

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值