原理讲解:
以整型数组a为例,
首先定义三个变量。
int i,min=0;
int a[10];
其中,i首先用来控制键盘接收的数据量,并将其保存到数组中。
printf("请输入10个整数:\n");
for(i=0;i<10;i++)
{
printf("第%d个数为:",i+1);
scanf("%d",a+i);
}
随后,i又用来判断数据元素的大小,从第二位元素,即下标为1的元素开始进行判断,因为在此之前,最小值的下标已经被初始化为0,故默认第一位元素为最小值。
判断过程是:第二位元素首先与第一位元素(默认最小值)进行比较,若第二位的元素小于第一位,则交换最小值的下标,即第二位元素的下标保存到min中,反之则不保存。
for(i=1;i<10;i++)//从第二位数开始判断
{
if(a[i]<a[min])
min=i;
}
printf("最小值为:%d,下标为:%d",a[min],min);
效果展示: