linux里面运行最简单的c程序居然出现这种情况
程序代码:
#include <stdio.h> void main() { int i,j,temp,array[4][4]; printf("Input 4*4 data:\n"); for(i=0;i<4;i++) for(j=0;j<4;j++) scanf("%d",&array[i][j]); for(i=0;i<4;i++) for(j=0;j<4;j++) if(i!=j) { temp=array[i][j]; array[i][j]= array[j][i]; array[j][i]=temp; } for(i=0;i<4;i++) { printf("\n"); for(j=0;j<4;j++) printf("%d\t",array[i][j]); } }我在Linux里面运行输入一下的数据:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
程序的结果是:
1 2 3 4
5 6 7 8
9 10 11 12
之后我看了半天不知道为什么
我又在Window里面运行了一下发现输入相同的数据,但是结果是
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
弄的我郁闷
我在linux平台又把程序改为
程序代码:
for(i=0;i<5;i++) { printf("\n"); for(j=0;j<4;j++) printf("%d\t",array[i][j]); }结果就一样,但是我又在想这段程序的功能应该是把输入的数字行列对换吧,但从输出的结果来看好像不是那样!这是为什么啊???