如何用c语言任给10个数的一个一维数组,编程分别求出其中奇、偶数的个数,并显示输出奇偶数分别在数组中的位置
时间: 2024-02-16 11:04:35 浏览: 63
好的,以下是一段可以实现你要求的 C 语言代码:
```c
#include <stdio.h>
int main() {
int num_list[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 给定一维数组
int odd_count = 0; // 奇数计数器
int even_count = 0; // 偶数计数器
int odd_positions[10]; // 奇数位置数组
int even_positions[10]; // 偶数位置数组
int odd_index = 0; // 奇数位置数组下标
int even_index = 0; // 偶数位置数组下标
for(int i = 0; i < 10; i++) {
if(num_list[i] % 2 == 0) { // 判断是否为偶数
even_count++;
even_positions[even_index++] = i;
} else {
odd_count++;
odd_positions[odd_index++] = i;
}
}
printf("奇数个数为:%d\n", odd_count);
printf("奇数位置为:");
for(int i = 0; i < odd_count; i++) {
printf("%d ", odd_positions[i]);
}
printf("\n");
printf("偶数个数为:%d\n", even_count);
printf("偶数位置为:");
for(int i = 0; i < even_count; i++) {
printf("%d ", even_positions[i]);
}
printf("\n");
return 0;
}
```
这段代码中,我们同样定义了一个包含 10 个数的一维数组 `num_list`,并使用循环遍历数组中的每个元素。对于每个元素,我们使用取模运算判断其是否为偶数。如果是偶数,则将偶数计数器 `even_count` 加 1,并将当前位置 `i` 添加到偶数位置数组 `even_positions` 中;如果是奇数,则将奇数计数器 `odd_count` 加 1,并将当前位置 `i` 添加到奇数位置数组 `odd_positions` 中。
最后,我们输出奇偶数个数和位置数组。需要注意的是,在 C 语言中,我们使用数组来保存奇偶数位置,因此需要定义两个数组 `odd_positions` 和 `even_positions` 来分别保存奇数和偶数的位置,并使用下标 `odd_index` 和 `even_index` 来记录当前位置在数组中的下标。
阅读全文