如图 ,为啥printf出来的不是我赋予值的数组,这是个啥?
另外,不加"%d”就输出不出来显示空白?
#include <stdio.h> int main() { //使用第一种方式初始化方式声明并初始化二维数组arr1 int arr1[2][2]={{10,20},{30,40}}; //使用第二种方式初始化方式声明并初始化二维数组arr2 int arr2[2][2]; arr2[0][0]=10; arr2[0][1]=20; arr2[1][0]=30; arr2[1][1]=40; int i,j; for (i=0;i<2;i++) for(j=0;j<2;j++) { printf("%d\n",arr1[i][j]); //输出数组arr1的值 printd("%d\n",arr2[i][j]); //输出数组arr2的值 } return 0; }
输出数组要遍历数组内的值输出才行
#include <stdio.h> int main() { //使用第一种方式初始化方式声明并初始化二维数组arr1 int arr1[2][2]={{10,20},{30,40}}; //使用第二种方式初始化方式声明并初始化二维数组arr2 int arr2[2][2]; arr2[0][0]=10; arr2[0][1]=20; arr2[1][0]=30; arr2[1][1]=40; printf("%d\n",arr1[1][1]); // printf("%d\n",arr2[1][1]); return 0; } 数组的输出不同于像整形这样的数,你需要指定具体的地址