如果不使用函数指针进行设计, 那么需要编写两个排序函数, 分别实现升序排序和降序排序的功能.
[程序代码]
#include<stdio.h>
#define N 10
/* 函数原型 */
void Swap(short*, short*);
void Bubble_Sort_Ascending(short[], short);
void Bubble_Sort_Descending(short[], short);
void Show(short[], short);
/* */
int main()
{
short x[N];
short i = 0;
printf("请输入%d个数据: ", N);
while(i < N)
{
scanf("%hd", x + i);
i ++;
}
/* 升序排序 */
Bubble_Sort_Ascending(x, N);
Show(x, N);
/* 降序排序 */
Bubble_Sort_Descending(x, N);
Show(x, N);
/* */
return 0;
}
/* 交换两变量的值 */
void Swap(short *x, short *y)
{
short temp = *x;
*x = *y;
*y = temp;
}
/* 冒泡法排序(升序排序) */
void Bubble_Sort_Ascending(short a[], short n)
{
short i, j;
for(i = 0; i < n; i ++)
{
for(j = i + 1; j < n; j ++)
{
if(a[i] > a[j])
{