奇偶排序
描述
輸入
輸出
樣例輸入
10 9 8 7 6 5 4 3 2 1
樣例輸出
1 3 5 7 9 2 4 6 8 10
提示
先排序,再分别輸出奇數、偶數
問題連結:Bailian3164 奇偶排序
問題簡述:(略)
問題分析:
這是一個排序問題,按照提示做就可以了。
程式說明:
C++語言的排序程式寫起來要簡便一些。
題記:(略)
參考連結:(略)
AC的C語言程式如下:
/* Bailian3164 奇偶排序 */
#include <stdio.h>
#include <stdlib.h>
#define N 10
int a[N];
int cmp(const void *a, const void *b)
{
return *(int*)a - *(int*)b;
}
int main(void)
{
int i;
/* 輸入資料 */
for(i=0; i<N; i++)
scanf("%d", &a[i]);
/* 排序 */
qsort(a, N, sizeof(int), cmp);
/* 輸出結果:先輸出奇數,再輸出偶數 */
for(i=0; i<N; i++)
if(a[i] % 2 == 1)
printf("%d ", a[i]);
for(i=0; i<N; i++)
if(a[i] % 2 == 0)
printf("%d ", a[i]);
printf("\n");
return 0;
}
AC的C++語言程式如下: /* Bailian3164 奇偶排序 */
#include <iostream>
#include <algorithm>
using namespace std;
const int N = 10;
int a[N];
int main()
{
// 輸入資料
for(int i=0; i<N; i++)
cin >> a[i];
// 排序
sort(a, a + N);
// 輸出結果:先輸出奇數,再輸出偶數
for(int i=0; i<N; i++)
if(a[i] % 2 == 1)
cout << a[i] << " ";
for(int i=0; i<N; i++)
if(a[i] % 2 == 0)
cout << a[i] << " ";
cout << endl;
return 0;
}