这个max的值为什么不对呢?
这是代码:#include<stdio.h>
struct student{int l;int w;int h;char name[9];} stu[9];
int main(){
int a,i,max,min,dn,xn;
int b[9];
scanf("%d\n",&a);
max=min=b[0];
if(a!=-1){
for(i=0;i<a;i++){
scanf("%d %d %d %s\n",&stu[i].l,&stu[i].w,&stu[i].h,stu[i].name);
b[i]=stu[i].l*stu[i].w*stu[i].h;
if(b[i]<=min){
min=b[i];
xn=i;
}
if(b[i]>=max){
max=b[i];
dn=i;
}
printf("%d %d %d %s\n",stu[i].l,stu[i].w,stu[i].h,stu[i].name);
printf("%d %d\n",max,min);
}
}
else return 0;
return 0;
}
输入:
3
10 10 2 Jill
5 3 10 Will
5 5 10 Bill
输出却是:
10 10 2 Jill
134513513 200
5 3 10 Will
134513513 150
5 5 10 Bill
134513513 150
为什么min的值正确,而max的值却不对呢?