我想從用戶輸入的陣列中的數字中找到最小的數字。我得到的程式輸出是一個模糊的數字-858993460。這通常是因為型別不匹配,但它們在這里似乎沒問題。想不出解決辦法。謝謝您的幫助!
```
//
#include<stdio.h>
int main()
{
int a;
int i;
int num[25];
printf("Enter the 25 numbers:");
for (i = 0; i <= 24; i )
{
scanf("%d", &num[i]);
}
for (i = 0; i <= 24; i )
{
a = num[i];
if (a < num[i 1])
{
a = a;
}
else
a = num[i 1];
}
printf("Lowest number is %d\n", a);
return 0;
}
uj5u.com熱心網友回復:
希望這對你有用。只需洗掉else陳述句并引入a=num[i]insideif陳述句并通過這樣做考慮第一個元素是最小元素a = num[0]
#include<stdio.h>
int main()
{
int a;
int i;
int num[25];
printf("Enter the 25 numbers:");
for (i = 0; i <= 24; i )
{
scanf("%d", &num[i]);
}
a = num[0];
for (i = 0; i <= 24; i )
{
if (num[i] < a)
{
a = num[i];
}
}
printf("Lowest number is %d\n", a);
return 0;
}
uj5u.com熱心網友回復:
你的問題是i 1陳述。打開時i = 24,下一個索引超出范圍。C 不是拋出錯誤,而是讓您訪問那部分記憶體,為您提供存盤在那里的任何垃圾資料。這就是為什么你會得到如此隨機的結果。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/486078.html
上一篇:拆分陣列并將拆分的部分添加到末尾
