02:奇数单增序列

194 阅读1分钟

原题链接

总时间限制: 1000ms 内存限制: 65536kB

描述

给定一个长度为N(不大于500)的正整数序列,请将其中的所有奇数取出,并按升序输出。

输入

共2行:
第1行为 N;
第2行为 N 个正整数,其间用空格间隔。

输出

增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。

样例输入

10
1 3 2 6 5 4 9 8 7 10

样例输出

1,3,5,7,9

源码

#include<stdio.h>
int main(){
    int N;
    int a[501];
    int b[501];
    int sum=0;
    scanf("%d",&N);
    for(int i=0;i<N;i++)
        scanf("%d",&a[i]);
    for(int i=0,j=0;i<N;i++)
        if(a[i]%2==1){
            b[j]=a[i];
            j++;
            sum++;
        }
    for(int i=0;i<sum-1;i++)
        for(int j=0;j<sum-1-i;j++)
            if(b[j]>b[j+1]){
                int temp=b[j];
                b[j]=b[j+1];
                b[j+1]=temp;
            }
    for(int i=0;i<sum;i++){
        if(i==0)
            printf("%d",b[0]);
        else
            printf(",%d",b[i]);
    }

}

以上代码仅供参考