最常见的只得 20 分的情况:
#include<bits/stdc++.h>
using namespace std;
int a[100],n,ans,i;
int main()
{
cin>>n;
for(i=0;i<n;i++)
{
cin>>a[i];
if(a[i]<ans)
{
ans=a[i];
}
}
cout<<ans;
return 0;
}
这段代码之所以只得 20 分,是因为没有初始化 ans 的值。
如果整型变量定义在 main 函数外面,则初始值为 0,main 函数内的整型变量会随机赋初始值。所以需要给 ans 赋初始值,如果要求最小值,则最好让初始值最大。
由于题目中的数据范围为 0≤ai≤1000,因此需要将 ans 赋初始值 1000 即可 AC。
还有,基本上如果不使用数组或 vector ,那么就不会 AC。 所以这道题应该添加数组标签(而且它在循环结构的题单里,所以应该还有循环结构标签)。