数组
#include <stdio.h>
int main()
{
//数组:相同大小,相同类型的数组的集合,且占用一片连续的空间
//普通变量定义:类型 变量名;
//数组变量定义:类型 数组名[个数]; //使用中括号去区分变量与数组
//访问方式:使用下标法,下标是从0开始的,例如num[0] 访问第一个
int num[10]; //定义可以存储10个元素的数组
//开辟10个空间给num
//定义后赋值
num[0] = 100;
printf("num[0] = %d\n",num[0]);
for(int i = 0; i < 10; i++)
{
printf("num[%d] = %p\n",i,&num[i]);
}
return 0;
}
数组定义时初始化
#include <stdio.h>
int main()
{
//1.定义时不初始化(全局区的值应该是编译器默认填充0,局部变量编译器不自动
//填充数据,那么该数值为脏数据)
//定义时初始化方法: int num[5] = { 使用逗号隔开,且个数要与步长相同};
//2.定义时部分初始化:未初始化部分填充0
//int num[5] = {1,2};
//int num[5] = { [3] = 10,[1] = 50}; //下标初始化法,不建议
int num[5] = {0}; //下标初始化法,不建议
//3.定义时全部初始化
//int num[5] = {1,2,3,4,10};
for(int i = 0; i < 5 ; i++)
{
printf("num[%d] = %d\n",i,num[i]);
}
return 0;
}
二维数组的初始化
#include <stdio.h>
int main()
{
//二维数组的初始化
//1.全部初始化
//int num[2][2] ={ {1,1,},{2,2} }; //全部初始化
//int num[2][2] ={1,2,1,6}; //一维方式
//int num[][2] ={1,2,1,6}; //一维方式,不写最高维度的个数
//2.部分初始化
//int num[2][2] = {{1,2}};
int num[2][2] = {[0][1]= 1};
//int num[2][2] ={1,2}; //一维方式
//int num[][2] ={1,2}; //一维方式,不写最高维度的个数
for(int i = 0; i < 2; i++)
{
for(int j = 0; j < 2;j++)
{
printf("%d,",num[i][j]);
}
printf("\n");
}
return 0;
}