用指向指针的方法对n个整数排序并输出。
来源:互联网 发布:《数据挖掘》 编辑:程序博客网 时间:2024/06/09 14:53
/* 功能:用指向指针的方法对n个整数排序并输出。要求将排序单独写成一个函数。n和 整数在主函数中输入。最后在主函数中输出。*/#include <stdio.h>#include <stdlib.h>#define MAXSIZE 100void swap(int*, int*);void sort(int**, int);int main(void){ int i; int n; //整形数组 int array[MAXSIZE]; //指针数组 int *pArray[MAXSIZE]; printf("please enter n:\n"); scanf("%d", &n); for (i = 0; i < n; ++i) { scanf("%d", &array[i]); pArray[i] = &array[i]; } sort(pArray, n); for (i = 0; i < n; ++i) { printf("%d\n", *pArray[i]); } return 0;}//交换void swap(int *a, int *b){ int temp = *a; *a = *b; *b = temp;}//排序void sort(int **array, int n){ int *p; int *q; for (p = *array; p < *array + n; ++p) { for (q = p + 1; q < *array + n; ++q) { if (*p > *q) { swap(p, q); } } }}