初始化数组
的有关信息介绍如下:什么是数组
数值是,相同数据类型有序的,连续的存储集合。
int main(void)
{
int a =0;
in b =20;
int c = 50;
int d =78; //分配内存时,abcd4个变量不一定有序的连续
}
//定义数组,定义10个类型相同,连续,有序存储的数组
int arr[ 10 ] = { 2,4,6,8,5,3,1,9,7,10 };
//printf("arr = %d\n", arr); //取数组的第一个元素
printf("&arr = %p\n", &arr); //取数组的第一个元素,内存地址
//printf("&arr = %x\n", &arr); //内存地址使用16进制数表示
//printf("&arr = %#x\n", &arr);
printf("&arr = %p\n", &arr);
printf("&arr = %p\n", &arr);
return 0;
基本特性
①各个元素、连续存储
②数组名为地址,是数组首个元素的地址
arr == &arr
printf("arr = %p\n", arr); //打印数组名
printf("&arr = %p\n", &arr); //打印数组首个元素的地址
③求数组总的大小?
printf("数组的大小:%u\n", sizeof(arr));
④求数组每个元素的大小?
printf("数组元素的大小:%u\n", sizeof(arr));
⑤求数组元素的个数?
printf("数组元素的个数:%u\n", sizeof(arr) / sizeof(arr));
⑥数组第一个元素的下标:0
⑦数组最后一个元素的下标?
printf("数组最后一个下标:%u\n", sizeof(arr) / sizeof(arr - 1));
数组初始化
//初始化方法1
int arr = {1, 2, 3, 4, 5, 6};
//初始化方法2
int main(void)
{
int arr = { 3, 7 }; //剩余未初始化的元素,默认值为0
for(int i =0; i < 5; i++)
{
printf("%d\n", arr[i]);
}
return 0;
}
//初始化方法3
int arr = { 0 }; //初始化一个,全部元素为0的数据,清零
初始化方法4
int arr = { 1,2,3,4,7,9,10,13,16};
//编辑器会自动求和数组元素的个数
//初始化方法5
int arr = { 0 }; //定义了只有一个元素的数组值为0
//初始化方法6
int arr ; //声明了一个有10 个元素数组
arr =5;
arr =6;
arr =7;
编程题,如何使用数组元素逆序
冒泡排序
5 2 3 1 6 8 9 //n个数,比n-1行
2 3 1 5 6 8 //外层控制行
2 1 3 56 for(i=0; i< 7; i++)
1 2 3 5 for(j=0; j