#include<iostream>
using namespace std;
int main()
{
int arr[10];
cout<<"请给数组赋值"<<endl;
int i,min;
for(i=0;i<10;i++)
{cin>>arr[i];
}
for(i=0;i<10;i++)
{cout<<arr[i]<<" ";
}
cout<<endl;
min=arr[0];
for(i=1;i<=10;i++)
{if(arr[i]<min)
{min=arr[i];
cout<<"最小值的下标为:"<<i<<endl;
}
}
cout<<"最小值为:"<<min<<endl;
}
数组返回地址值时,有错误,但不知道哪里有错
代码有问题,需要提前获取min的值,而不是比较一次就输出一次,另外,最后一个for循环中,是for(i = 0; i <= 9; i++)
改正前:
改正后:
#include<iostream>
using namespace std;
int main()
{
int arr[10];
cout<<"请给数组赋值"<<endl;
int i,min;
for(i=0;i<10;i++)
{cin>>arr[i];
}
min=arr[0];
for(i=0;i<10;i++)
{cout<<arr[i]<<" ";
if(arr[i]<min)
{min=arr[i];}
}
cout<<endl;
for(i=0;i<=9;i++)
{if(arr[i] == min)
{
cout<<"最小值的下标为:"<<i<<endl;
}
}
cout<<"最小值为:"<<min<<endl;
}