数组用指针排序问题!!
#include "stdio.h"#define Size 10 /*数组元素个数*/
int Fun(int *A, int nSize); /*排序函数*/
main()
{
int A[Size];
int i;
printf("Enter %d number:\n",Size); /*输入10个数组元素*/
for (i = 0; i < Size; i++)
{
scanf("%d", A[i]);
}
Fun(A, Size); /*函数调用*/
for (i = 0; i < Size; i++) /*输出排序后的数组*/
{
printf("%5d", A[i]);
}
getch();
}
int Fun(int *A, int nSize) /*冒泡排序把元素等于0的向后移并保持原来的顺序*/
{
int i, j, temp;
for (i = 0; i < nSize-1; i++)
{
for (j = 0; j < nSize - i-1; j++)
{
if (*(A+j) == 0 && *(A+j) < *(A+j+1)) /*判断元素是否等于0且是否小于后面这个元素*/
{
temp = *(A+j);
*(A+j) = *(A+j+1);
*(A+j+1) = temp;
}
}
}
}