#include <stdio.h>
int main(){
int st[2][2];
long long int xu[4]={0};
long long int temp;
int i,j;
for(i=0;i<2;i++){
for(j=0;j<2;j++){
scanf("%d",&st[i][j]);
}
}
xu[0]=(st[0][0])*(st[1][0]);xu[1]=st[0][0]*st[1][1];xu[2]=st[0][1]*st[1][0];xu[3]=st[0][1]*st[1][1];
for(i=0;i<4-1;i++){
for(j=0;j<4-1-i;j++){
if(xu[j]<xu[j+1]){
temp=xu[j];
xu[j]=xu[j+1];
xu[j+1]=temp;
}
}
}
for(i=0;i<4;i++){
printf("%lld ",xu[i]);
}
if(xu[3]<-2147483647){
printf("long long int");
}else if(xu[0]>2147483648){
printf("long long int");
}else { printf("int");
}
}
为什么我定义的数组xu的值变成1或者是-1了呢?