當我在數組中輸入值1時,此代碼不會給出答案。例如,我已經採取不了。的元素爲5 然後我輸入它們爲2,3,1,6,4 然後輸出給出2作爲最小的數字和位置編號並不總是正確的 錯誤是什麼?程序使用數組打印最小數量的n個數字的位置
#include<stdio.h>
int main()
{
int n,i,a[10],sum=0;
int small=0,pos=0;
printf("enter no of elements in array:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
for(i=1;i<n;i++)
{
small=a[0];
if(a[i] < small)
{
small=a[i];
pos=i;
}
}
printf("smallest no:%d \n",small);
printf("position:%d",pos);
}
行走代碼並記下每個步驟的值(或使用調試器)。 small = a [0]是做什麼的? –
也許,也許,'small = a [0];'應該在循環之前。但也許,可能呢? – AntonH