编写最大最小数函数,输出最大数正确,最小数一直都是-858993460

#include

using namespace std;
int imax(int array[], int count)
{
int max = 0;

for (int i = 0; i <= count; i++)
{
    if (max < array[i])max = array[i];
}
return max;

}
int imin(int array[], int count)
{
int min = array[0];
for (int i = 1; i <= count; i++){
if (min > array[i]) min = array[i];
}
return min;
}
int main()
{
int array[100], count;

cin >> count;

for (int i = 0; i < count; i++){
    cin >> array[i];
}

cout << "the max is:" << imax(array, count) << endl;
cout << "the min is:" << imin(array, count) << endl;
return 0;

}

 i <= count
->
i < count
否则越界了。

max函数第一行int max = 0;
也应该写int max = array[0];

你的最大的程序也是错的,只是碰巧没有初始化的array[count]是一个负数,所以不影响结果而已。

数组越界,应该这样调用:
imax(array, count-1)
imin(array, count-1)