C语言 输入10个数,将10个整数按升序排列输出,并且奇数在前,偶数在后。如果输入的10个数是:10 9 8 7 6 5 4 3 2 1 ,则输出:1 3 5 7 8 2 4 6 8 10。(编程提示:可利用2个数组变量,一个用来存放输入的整数,输入后,对这个数组进行排序,然后将数据复制到另一个数组中,先复制奇数再复制偶数)。 输入提示:Input 10 numbers: 输入格式:%d 输出格式:Output:%d,%d,%d,%d,%d,%d,%d,%d,%d,%d
时间: 2023-07-15 07:10:02 浏览: 83
以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int nums[10], odd_nums[10], even_nums[10];
int i, j, odd_count = 0, even_count = 0;
printf("Input 10 numbers: ");
for(i = 0; i < 10; i++) {
scanf("%d", &nums[i]);
}
// 对输入的10个数进行排序
for(i = 0; i < 9; i++) {
for(j = i + 1; j < 10; j++) {
if(nums[i] > nums[j]) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}
// 将奇数和偶数分别复制到不同的数组中
for(i = 0; i < 10; i++) {
if(nums[i] % 2 == 1) {
odd_nums[odd_count++] = nums[i];
} else {
even_nums[even_count++] = nums[i];
}
}
// 输出结果
printf("Output: ");
for(i = 0; i < odd_count; i++) {
printf("%d ", odd_nums[i]);
}
for(i = 0; i < even_count; i++) {
printf("%d ", even_nums[i]);
}
return 0;
}
```
输入样例:
```
Input 10 numbers: 10 9 8 7 6 5 4 3 2 1
```
输出样例:
```
Output: 1 3 5 7 9 2 4 6 8 10
```
阅读全文