#include<stdio.h>
void main(){
//完全初始化
int a[5] = {1,2,3,4,5};
//不完全初始化
int b[5] = {1,2,3};//未被初始化的元素默认为0
//数组清零
int c[5] = {0};
//错误写法
int d[5];
// d[5] = {1,2,3,4,5};//错误,只有在定义数组的时候才可以整体赋值
//其他情况下整体赋值都是错误的,而且a[5]下标也越界了
int e[5]={1,2,3,4,5};
int f[5];//如果这样进行for输出的话,那么每个元素都将是垃圾数字,随机数字
int i;
//如果要把e数组中的元素全部复制为b数组
//错误的写法
// f=e;//error 资料上显示是不可以的,但是c语言测试后是可以的 在java中是正确的
for(i=0;i<5;i++)
printf("%d\n",f[i]);
//正确的写法
for(i=0;i<5;i++)
f[i] = e[i];
//二维数组的初始化
int aa[3][3] = {1,2,3,4,5,6,7,8,9};//第一种初始化
int bb[3][3] = { {1,2,3}, {4,5,6}, {7,8,9} };//第二种初始化
/**
是否存在多维数组?
不存在?
因为内存是线性唯一的
n维数组可以当做每个元素都是n-1维数组的一维数组
比如:
int[3][4]
该数组是含有3个元素的一维数组
只不过每个元素都可再分为4个小元素
int[3][4][5];
该数组是含有3个元素的一维数组
只不过每个元素都是4行5列的二维数组
*/
}
数组的初始化及其相关操作
最新推荐文章于 2023-03-01 13:32:58 发布