输入数组int a[10]的各元素,输出最小值及次小值,及它们所在下标。
时间: 2023-09-28 11:05:27 浏览: 58
以下是一个示例代码,可以实现输入数组各元素,输出最小值及次小值,以及它们所在下标的功能:
```c++
#include <iostream>
using namespace std;
int main() {
int a[10];
int min = INT_MAX; // 初始化最小值为 int 类型的最大值
int smin = INT_MAX; // 初始化次小值为 int 类型的最大值
int minIndex, sminIndex;
// 输入数组各元素
for (int i = 0; i < 10; i++) {
cout << "请输入第 " << i+1 << " 个元素:";
cin >> a[i];
// 更新最小值和次小值
if (a[i] < min) {
smin = min;
sminIndex = minIndex;
min = a[i];
minIndex = i;
} else if (a[i] < smin) {
smin = a[i];
sminIndex = i;
}
}
// 输出结果
cout << "最小值为:" << min << ",下标为:" << minIndex << endl;
cout << "次小值为:" << smin << ",下标为:" << sminIndex << endl;
return 0;
}
```
上述代码中,我们利用了两个变量 `min` 和 `smin` 来分别表示当前已经扫描过的元素中的最小值和次小值。在输入数组元素的过程中,我们不断更新这两个变量的值,同时也记录下它们所在的下标。最终输出结果时,直接输出这两个变量的值和下标即可。