我想创建一个C函数,它接受一个数组,找到最小的元素,并将该元素的值设置为零。找到一个数组的最小元素,并将其索引设置为0
这是我迄今的功能。
void find_minimum(double a[], int n) {
int i, smallest = 0;
smallest = a[0];
for (i = 0; i < n; i++) {
if (a[i] < smallest) {
smallest = a[i];
}
a[i] = 0;
}
}
当我运行它时,除最后一个之外的每个索引都是零,但我只想要最小的元素为零。
在if语句中移动'a [i] = 0;'并且从索引1开始比较,即for循环中的'i = 1' –
如果存在多于1个最小元素,该怎么办? –
@ImranAli不,那么它会设置最小为0,每次发现一个新的最小值为 –