大家来找bug,很简单的函数
int max(int a[10],int length,int& val)
{
int index=0;
val=a[0];
for(int i=0;i<length;i++)
if(val<a[i]) {
val=a[i];
index=i;
}
return index;
}
第一种输出
int val=0,a[10]={3,1,4,-5,33,-75,22,21,54,100};
cout<<max(a,10,val)<<'\t'<<val<<endl;
第二种输出
int val=0,a[10]={3,1,4,-5,33,-75,22,21,54,100};
cout<<max(a,10,val)<<'\t';
cout<<val<<endl;
两种结果居然不一样
第一种输出的是9 0
第二种输出的是正确结果9 100
请问这为什么?