1 //双指针对十个数排序
2
3 #include <stdio.h>
4 #include <stdlib.h>
5 #define N 8
6 //2017.3.5
7 int main()
8 {
9 //初始化数组 赋值N个数 用指针数组指向
10 int num[N];
11 int *pNum[N];
12 int **p = NULL;
13 for (int i = 0; i < N; i++)
14 {
15 num[i] = rand() % 100;//产生随机数
16 printf("%d\t", num[i]);
17 pNum[i] = &num[i];//这里方便二维指针
18 }
19 printf("\n");
20 p = pNum;
21 for (int i = 0; i < N; i++)
22 {
23 for (int j = i + 1; j < N; j++)
24 {
25 if (**(p + i) >= **(p + j))
26 {
27 int temp = **(p + i);
28 **(p + i) = **(p + j);
29 **(p + j) = temp;
30 }
31 }
32 }
33 //打印结果
34 for (int i = 0; i < N; i++)
35 {
36 printf("%d\t", **(p + i));
37 }
38 getchar();
39 return 1;
40 }