c语言_数组

2023-03-07 14:15:43 浏览数 (1)

数组
1、数组的定义和使用

格式:

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

元素个数,代表该数组有多少个相同数据类型的变量

下标 用来表示数组中的某一个元素 例如 int arr[10]; arr[1]代表数组的第二个元素

数组下标是从0开始的 到数组元素个数-1

数组下标越界:超出了数组元素个数的下标,如果操作越界数据会出现程序错误 1、乱码结果 2、报错

求出数组元素个数:

int (size_t) unsigned int 个数 = sizeof(数组名)/sizeof(数组元素 | 数组数据类型)

求出数组地址:

printf("%pn",数组名)

printf("%pn",数组元素)

数组元素 1 (sizeof(数据类型))

数组名 1(sizeof(数组名))

练习:十只小猪称体重 定义一个数组 存储小猪体重 通过遍历找到最重的小猪 找到数组中数据最大值的下标 根据下标打印数据

练习: 找到小猪中第二重的

练习:冒泡排序

二维数组:

格式:数据类型 数组名【行个数】【列个数】

初始化方式:

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

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

​ int arr[4][3] = { 1,2,3,4,5,6,7,8,9,10 };//arr[3][1] arr[3][2]

​ int arr[4][3] = { {1},{1} ,{1} };

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

求行数:sizeof(数组名)/sizeof(数组名[0]);

求列数:sizeof(数组名[0])/sizeoef(数组名[0][0])

二维数组首地址表示方式:

printf("%pn",数组名);

练习:10名学生 三门成绩 scores【10】【3】 求出每名学生的总成绩和平均成绩 求出班级的语文 数学 英语的平均成

语数外 【0】【0】 【0】【1】 【0】【2】

字符数组和字符串:

字符数组和字符串区别在于是否有字符串结束标志

​ //字符数组

​ //char arr[10] = { ‘H’,‘e’,‘l’,‘l’,‘o’ };

​ //char arr[] = { ‘H’,‘e’,’’,‘0’,‘o’ };

​ //char arr[] = “hnenllo”;

​ char arr[100];

​ scanf("%[^n]", arr);

​ //%s会接收字符串结束标志【’’】之前的所有字符 在ASCII中就是数字0

​ printf("%s", arr);

​ //for (int i = 0; i < 10; i )

​ //{

​ // printf("%c", arr[i]);

​ //}

​ //printf("%dn", sizeof(arr));

随机数:

1、添加头文件 time.h stdlib.h

2、添加随机数种子 srand((unsigend int )time(NULL));

3、生成随机数 rand() %

0 人点赞