70,022
社区成员




void BubbleSort(int* pData,int Count)
{
int iTemp;
for(int i=1;i<Count;i++)
{
for(int j=Count-1;j>=i;j--)
{
if(pData[j]<pData[j-1])
{
iTemp = pData[j-1];
pData[j-1] = pData[j];
pData[j] = iTemp;
}
}
}
}
#define N 5
#include <stdio.h>
void main()
{
int i,j,temp,a[N];
printf("请输入数组a的值\n");
for(i=0;i <N;i++)
scanf("%d",&a[i]);
int tag = a[0] ; //记录第一个元素应该移动到的位置
int first = 1, rear = N-1 ;
//while循环里把a[0]后面的元素按a[0]划分为两部分
int t ;
while(first <= rear)
{
if(a[first] > a[0] && a[rear] <= a[0])
{
t = a[first] ;
a[first] = a[rear] ;
a[rear] = t;
first++;
rear-- ;
}
if(a[first] <= a[0])
first++ ;
if(a[rear] > a[0])
rear-- ;
}
//把a[0]的值和a[first-1]交换
if(first > 1)
{
t = a[first-1] ;
a[first-1] = a[0] ;
a[0] = t ;
}
for(i=0;i <N;i++)
printf("%d\t",a[i]);
}