[C/C++/初学者] 求数组元素中的最小值及其下标

原理讲解:


以整型数组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);

效果展示:


版权声明:本文为DuFengYa原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。