将一个长度为10的整型数组将奇数排在数组的前面,其余的偶数排在数组的后面要求排列后偶数的顺序与原来一

急!!!

可以利用冒泡排序算法的思想来完成:
#include <stdio.h>
int main(void)
{
int a[10],i,j,t;
for (i = 0; i < 10; i++) { /*输入10个整数*/
scanf("%d",&a[i]);
}
for (i = 0; i<9; i++) { /*调换奇数和偶数的位置*/
for (j=0; j<10-i; j++) {
if (a[j]%2==0&&a[j+1]%2) {
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for (i = 0; i < 10; i++) { /*输出调换后结果*/
printf("%d ",a[i]);
}
likmjn'\n');
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-05
可以利用冒泡排序算法的思想来完成:

//---------------------------------------------------------------------------

#include <stdio.h>

int main(void)
{
int a[10],i,j,t;
for (i = 0; i < 10; i++) { /*输入10个整数*/
scanf("%d",&a[i]);
}
for (i = 0; i<9; i++) { /*调换奇数和偶数的位置*/
for (j=0; j<10-i; j++) {
if (a[j]%2==0&&a[j+1]%2) {
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
for (i = 0; i < 10; i++) { /*输出调换后结果*/
printf("%d ",a[i]);
}
putchar('\n');
return 0;
}
//---------------------------------------------------------------------------
相似回答