SLIDE1

Sunday, December 28, 2014

sắp xếp chẵn trước, lẻ sau và tăng dần - bài tập c


//sắp xếp các phần tử của mảng sao cho các phần tử chẵn đứng trước, các phần tử lẻ đúng sau đông thời cũng sắp xếp tăng dần
#include<stdio.h>
#include<conio.h>
int a[10] = { 1, 5, 4, 8, 2, 9, 8, 6, 3, 9 };
int n = 10;
void sapxep(int a[], int n)
{
int i, j;
for (i = 0; i < n - 1;i++)
for (j = i + 1; j < n;j++)
if ((a[i] % 2 != 0 && a[j] % 2 == 0) 
|| (a[i] % 2 == 0 && a[j] % 2 == 0 && a[i]>a[j]) 
|| (a[i] % 2 != 0 && a[j] % 2 != 0 && a[i]>a[j]))
{
int t = a[i];
a[i] = a[j];
a[j] = t;
}
}
void xuatmang(int a[], int n)
{
for (int i = 0; i < n; i++) printf(" %d ", a[i]);
}
void main()
{
sapxep(a, n);
xuatmang(a, n);
printf("\n");
}