引入一个想法: 一个变量:相当于一个点。 一维数组(也就是数组):点汇聚成为一条直线。 二维数组:直线汇聚成一个平面。 三维数组:平面汇聚成立体图形。
类型 数组名[常量表达式][常量表达式]
例一:二维数组的舒服写法:
#include<stdio.h> int main() { int a[3][4]={ {1,2,3,4}, {5,6,7,8}, {9,10,11,12} }; int i,j; for(i=0;i<3;i++) { for(j=0;j<4;j++) { printf("%d ",a[i][j]); } printf("\n"); } printf("\n"); return 0; }
例二:对前三行每一行的第一个元素赋初值,其他没有被赋值的自动补充为0:
#include<stdio.h> int main() { int a[3][4]={{1},{2},{5}}; //把前三行每一行的第一个元素赋初值,其他没有被赋值的自动补充为0。 //如果赋值的数,多于三个,后面的会报错,并且自动不算数。 //如果没有对数组进行赋值,则得出的结果为随机数。 int i,j; for(i=0;i<3;i++) { for(j=0;j<4;j++) { printf("%d ",a[i][j]); } printf("\n"); } return 0; }
例三:指定数组元素,其他元素自动补充为0:
#include<stdio.h> int main() { int a[3][4]={[2][3]=1,[2][1]=8,[1][2]=5}; int i,j; for(i=0;i<3;i++) { for(j=0;j<4;j++) { printf("%d ",a[i][j]); } printf("\n"); } return 0; }
例四:证明只有第一维可以不写数值:
#include<stdio.h> int main() { int a[][4]={1,2,3,4,5,6,7,8,9,10,11,12};//只有第一维可以不写 int i,j; for(i=0;i<3;i++) { for(j=0;j<4;j++) { printf("%d ",a[i][j]); } printf("\n"); } return 0; }
本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注的更多内容!