c语言数组的注意事项

1.数组的元素个数不能为0,基本语法如下:

type arr_name[常量值];

不完全初始化如下:

int arr[6]={1};//第⼀个元素初始化为1,剩余的元素默认初始化为0

2.数组的类型,数组是一种自定义数据类型,去掉数组名留下的就是数组的类型

如int arr[10],则arr数组的类型为int [10];

int arr1[12],则数组arr1的类型为int [12];

char ch[8],则ch数组类型为char [8];

3.c语言规定数组是有下标的,下标从0开始,n个元素的数组,最后一个元素的下标为n-1,下标相当于数组元素的编号。

如数组int arr[10]={1,2,3,4,5,6,7,8,9,10};

数组和下标对应如下:

通过操作符[ ]进行访问,这个操作符叫做下标引用操作符。arr[k],表示访问下标为k的元素。

一个数组输入和输出的案例如下:

int main()
{
	int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
	int i = 0;
	for (i = 0; i < 10; i++)
	{
		scanf("%d", &arr[i]);
	}
	for (i = 0; i < 10; i++) 
	{
		printf("%d ", arr[i]);
	}

	return 0;
}

4.数组在内存中是连续存放的,同时数组随着下标的增长,地址也在由小到大变化的。一个案例如下:

5.可以利用sizeof计算数组的大小和数组的元素个数

int arr[10]={0};
sizeof(arr);//40 ,数组所占内存空间的大小是40,单位是字节
sizeof(arr[0]);//4 ,sizeof(arr[0])计算的是一个元素所占空间的大小
sizeof(arr)/sizeof(arr[0];//10 ,计算的是数组的元素个数

6.二维数组按照行进行初始化,注意二维数组是一个一维数组的数组,存放一维数组的数组,二维数组的每个元素是一维数组。

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

二维数组初始化时可以省略行,不能省略列

int arr0[][5]={1,2};
int arr1[][5]={1,2,3,4,5,6,7,6};
int arr2[][5]={{1,2},{3,4},{5,6}};

二维数组中的每个元素都是连续存放的。

7.变长数组,允许使用变量指定数组大小

int n = a + b;
int arr[n];

变长数组长度只有在运行时才能确定,变长数组不能初始化。同时变长数组的大小一旦确定就不能再变化了。

8.Sleep函数使用时候要包含头文件windows.h,如下:

#include<windows.h>
Sleep(1000);//表示睡眠1000毫秒

strlen()函数使用时候需要包含头文件string.h

strlen()是 C 语言中的函数,用于计算字符串的长度(不包括字符串末尾的'\0')

sizeof()返回的是字符串数组的大小,包括字符串末尾的 null 字符,而不是字符串的长度。

char arr1[]="abc";//相当于[abc\0]
strlen(arr1);//3 不包含字符串末尾的\0,strlen是求字符串中的字符个数,工作原理是找\0
char arr2[]={'a','b','c'};//注意arr2不是字符串是字符数组,strlen(arr2)是随机数。
sizeof(arr1)/sizeof(arr1[0]);//4 包含字符串末尾的\0

system()函数使用时候需要包含头文件stdlib.h

system("cls");//system函数是库函数,执行系统指令,cls是清理控制台屏幕信息

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值