题目如下:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。如输入数组1,4,2,7,8,9,输出结果为1,7,9,2,4,8。#include #defineN10intis_odd(intnum){if(num%2!=0)return1;}voidinit(int*array){inti;srand(time(NULL));for(i=0;iarray[i]=rand()%100; }voidswap(int*i,int*j){inttmp;tmp=*i;*i=*j;*j=tmp;}voidprint(int*array){inti;for(i=0;iprintf("%d",array[i]); printf("\n");}voidsort(int*array){inti=0,j=N-1;for(i=0;iif(!is_odd(array[i])) for(j=N-1;j>i;j--)if(is_odd(array[j])){swap(array+i,array+j);break;}}}intmain(intargc,char**argv){intarray[N];init(array);print(array);sort(array);print(array);return0;}
临摹微笑
慕勒3428872
相关分类