问题多多。
main()
{static int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
int i,j,t;
printf("原矩阵:\n");
for (i=0;i<3;i++)
{for (j=0;j<3;j++);
printf("%5d",a[i][j]);
printf("\n");}
for (i=0;i<3;i++)
for (j=0;j<i;j++)
{t=a[i][j];a[i][j]=a[j][i];a[j][i]=t;}
printf("转置后的矩阵:\n");
for (i=0;i<3;i++)
{for (j=0;j<3;j++);
printf("%5d",a[i][j]);
printf("\n");}
getch();
}
运行结果没有矩阵啊。
----------------解决方案--------------------------------------------------------
for (j=0;j<3;j++) /*去掉分号*/
----------------解决方案--------------------------------------------------------
以下是引用卧龙孔明在2007-1-25 12:04:00的发言:
for (j=0;j<3;j++) /*去掉分号*/
for (j=0;j<3;j++) /*去掉分号*/
嗯..可以了..
只不过想不明白.为什么要去掉分号
----------------解决方案--------------------------------------------------------
一个";"
相当于一条语句(只不过是空的),因此for之后就一直只循环这条语句,而你想要的
printf("%5d",a[i][j]);
就不在循环中执行,仅在循环执行后执行一次
----------------解决方案--------------------------------------------------------
嗯..明白了..谢谢
结帖
----------------解决方案--------------------------------------------------------