您的位置:首页 > 其它

数组的初始化及其相关操作

2012-07-21 19:31 281 查看
#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列的二维数组
*/
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: