c语言 二维数组如何输入 该怎么输入数组,才能输出?

#include <stdio.h>
#include <stdlib.h>

int main()
{
int a[2][2];
int i,j;
for (i=0;1<2;i++)
{
for (j=0;j<2;j++)
{
scanf("%d ",&a[i][j]);
}
}
printf("%d",*a);
return 0;
}

其实并不存在真正的“二维”,只不过是C编译器自动的将它 一行一行的保存成了一维信息。所以,二维数组的输入只要用双重循环即可,比如:
int a[11][11];
for(int i=0; i<10; i++){
for(int j=0; j<10; j++){
scanf("%d",&a[i][j]);

}
}
其实 int a[3][3] 可以这样初始化:
int a[3][3] = {0,1,2,3,4,5,6,7,8};
编译器会自动的将线性信息写入二维数组中。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-10
#include <stdio.h>
#include <stdlib.h>

int main()
{
int a[2][2];
int i,j;
for (i=0;i<2;i++)
{
for (j=0;j<2;j++)
{
scanf("%d",&a[i][j]);
}
}
for (i=0;i<2;i++)
{
for (j=0;j<2;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
}追问

能不能把运行的过程截个图给看看??

追答

你可一个个输入,比如1输人,回车,再输入,一直输入4个数就行。或者你先输入2个数,比如1 2注意空格隔开,回车,在输入3 4 也行。

本回答被提问者和网友采纳
第2个回答  2013-04-29
void main()
{
int a[2][2];
int i,j;
for (i=0;i<2;i++)
{
for (j=0;j<2;j++)
{printf("输入第%d行的第%d个数的值:",i,j);
scanf("%d",&a[i][j]);
}
}

for (i=0;i<2;i++)
{
for (j=0;j<2;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
}
第3个回答  2013-04-29
#include <stdio.h>
#include <stdlib.h>

int main()
{
int a[2][2];
int i,j;
for (i=0;1<2;i++)
{
for (j=0;j<2;j++)
{
scanf("%d ",&a[i][j]);
}
}
for(i=0;i<2;i++)for(j=0;j<2;j++)
printf("%d",a[i][j]);
return 0;
}