用C语言输入若干个整数后输出最小值的下标
时间: 2024-11-12 22:30:59 浏览: 7
在C语言中,如果你想要输入若干个整数并找到其中最小值的下标,你可以按照以下步骤进行:
首先,你需要定义一个数组来存储输入的整数,并初始化一个变量来保存当前的最小值和它的下标,假设这个数组名为`arr[]`,下标从0开始。
```c
#include <stdio.h>
int main() {
int n;
printf("请输入整数的数量:");
scanf("%d", &n);
int arr[n]; // 声明数组
int min_val = arr[0];
int min_index = 0;
for (int i = 0; i < n; i++) {
printf("请输入第%d个整数:", i+1);
scanf("%d", &arr[i]);
// 比较当前元素与已知最小值
if (arr[i] < min_val) {
min_val = arr[i];
min_index = i; // 如果有更小的值,更新最小值的下标
}
}
printf("最小值 %d 的下标是:%d\n", min_val, min_index);
return 0;
}
```
在这个程序中,我们通过循环依次读取每个整数,并检查是否比当前的最小值还小。如果找到了更小的值,就更新最小值和其对应的下标。最后输出找到的最小值及其下标。
相关问题
用c语言输入10个整数,输出最小值的下标。如果有多个全部输出
以下是使用C语言解决您的问题的代码:
#include <stdio.h>
int main() {
// 定义变量
int arr[10];
int min = arr[0];
int i, index;
// 输入10个整数
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 找到最小值及其下标
for (i = 1; i < 10; i++) {
if (arr[i] < min) {
min = arr[i];
index = i;
} else if (arr[i] == min) {
printf("最小值的下标是:%d\n", i);
}
}
// 输出最小值的下标
printf("最小值的下标是:%d\n", index);
return 0;
}
希望这可以帮助您解决问题!
用C语言编写程序:输入10个整数,输出最小值的下标,如果有多个全部输出
以下是用C语言编写的程序,可以输入10个整数,输出最小值的下标,如果有多个,则全部输出。
```c
#include <stdio.h>
int main() {
int arr[10];
int min = 0;
int index[10];
int i, j, count = 0;
// 输入10个整数
printf("请输入10个整数:\n");
for (i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
// 找到最小值及其下标
for (i = 1; i < 10; i++) {
if (arr[i] < arr[min]) {
min = i;
}
}
// 找到所有最小值的下标
for (i = 0; i < 10; i++) {
if (arr[i] == arr[min]) {
index[count] = i;
count++;
}
}
// 输出最小值的下标
printf("最小值的下标为:");
for (i = 0; i < count; i++) {
printf("%d ", index[i]);
}
printf("\n");
return 0;
}
```
这个程序使用了两个循环来实现。第一个循环找到了数组中最小值的下标,第二个循环找到了所有最小值的下标,然后将它们输出。
阅读全文