VC++的二维数组问题

来源:百度知道 编辑:UC知道 时间:2024/06/25 23:09:25
#include "stdio.h"
void main()
{int i,j;
int a[3][3];
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
{
a[i][j]=rand()%50;
}
printf("%5d",a[j][i]);
printf("\n\n");

getch();
}
#include "stdio.h"
void main()
{int i,j;
int a[3][3]={1,2,3,4};
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
{
a[i][j]=rand()%50;
}
printf("%5d",a[j][i]);
printf("\n\n");

getch();
}
为什么运行后的结果不是一个二维数组的。而是一个数:419903

你要把括号把printf("%5d",a[j][i]); 包起来。
改后应该是这样:
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
{
a[i][j]=rand()%50;
printf("%5d",a[j][i]);
}
数组时一组数。记得。