奇偶排序c语言小组报告,实现奇偶排序(c语言)

===== 第2题:奇偶排序(一) =====

总时间限制:

1000ms

内存限制:

65536kB

描述

输入十个整数,将十个整数按升序排列输出,并且奇数在前,偶数在后。

输入

输入十个整数

输出

按照奇偶排序好的十个整数

#include

#define COUNT 10

#define bool int

#define true 1

#define false 0

/****

*负责冒泡排序

***/

int* sortFunction(int data[]){

int i,j;

for(j=0;j

for(i=0;i

if (data[i]>data[i+1]){

int tmp=data[i]; data[i]=data[i+1];data[i+1]=tmp;

}

}

}

return data;

}

/****

**负责判断奇数或者偶数

*/

bool isOddNumber(int data){

if(data % 2==0){

return false;

}else{

return true;

}

}

main()

{

int arr[]={10, 9 ,8, 7 ,6, 5, 4, 3, 2, 1};

int oddArr[COUNT]={0},evenArr[COUNT]={0};

int *tmp=NULL;

int i;

int m=0;

int n=0;

for(i=0;i

if(isOddNumber(arr[i])){

evenArr[m++]=arr[i];

}else{

oddArr[n++]=arr[i];

}

}

//对于奇数数组排序

tmp=sortFunction(oddArr);

puts("\n========odd number==========\n");

for(i=0;i

int num=*tmp;

if(num!=0)

{

printf("%d ",num);

}

*tmp++;

}

//对于偶数数组排序

tmp=sortFunction(evenArr);

puts("\n========even number==========\n");

for(i=0;i

int num=*tmp;

if(num!=0)

{

printf("%d ",num);

}

*tmp++;

}

printf("over");

}

以上代码编写与vs2012里完成。

我觉得看了 北大的计算机概论A 这门课,收获很多,特动手重新复习了一下C语言程序设计,把课里的习题自己动手做了一遍。

Introduction to Computing 计算概论A

by Ge Li 李戈, Ph.D.

你可能感兴趣的:(奇偶排序c语言小组报告)