不能正确输出二维数组,错在哪里?

来源:百度知道 编辑:UC知道 时间:2024/06/23 22:55:55
#include"stdio.h"
main()
{
int i,j,a[3][4];
printf("please input 1group:\n");
for(i=0;i<3;i++)
scanf("%d",&a[i]);
printf("please input 2group:\n");
for(j=0;j<4;j++)
scanf("%d",&a[j]);
for(i=0;i<3;i++)
printf("\n%d",a[i]);
for(j=0;j<4;j++)
printf("\n%d",a[j]);
}

#include"stdio.h"
main()
{
int i,j,a[3][4];
printf("please input 12 int_number:\n");
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
printf("output number:\n");
for(i=0;i<3;i++)
for(j=0;j<4;j++)
printf("\n%d",a[i][j]);
}
二维数组不能像一维数组那样操作!

你的输出不对!输出的时候肯定是一个一个的输出:
for(i=0;i<3;i++)
printf("\n%d",a[i][0]);
for(j=0;j<4;j++)
printf("\n%d",a[j][0]);
这样就没有问题了!

for(i=0;i<3;i++)
scanf("%d",&a[i]);
printf("please input 2group:\n");
for(j=0;j<4;j++)
scanf("%d",&a[j]);

变成
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
}
}

for(i=0;i<3;i++)
printf("\n%d",a[i]);
for(j=0;j<4;j++)
变成