用指针实现几个整数的排序
时间: 2024-05-07 15:15:38 浏览: 12
以下是使用指针实现几个整数的排序的示例代码:
```c
#include <stdio.h>
void sort(int *a, int *b, int *c);
int main() {
int x = 5, y = 3, z = 8;
printf("Before sorting: x=%d, y=%d, z=%d\n", x, y, z);
sort(&x, &y, &z);
printf("After sorting: x=%d, y=%d, z=%d\n", x, y, z);
return 0;
}
void sort(int *a, int *b, int *c) {
int temp;
if (*a > *b) {
temp = *a;
*a = *b;
*b = temp;
}
if (*a > *c) {
temp = *a;
*a = *c;
*c = temp;
}
if (*b > *c) {
temp = *b;
*b = *c;
*c = temp;
}
}
```
运行结果:
```
Before sorting: x=5, y=3, z=8
After sorting: x=3, y=5, z=8
```
在这个示例中,我们定义了一个 `sort()` 函数,它接受三个整数指针作为参数,并使用指针对它们进行排序。在 `main()` 函数中,我们声明了三个整数变量 `x`、`y` 和 `z`,并将它们的值分别初始化为 `5`、`3` 和 `8`。然后,我们调用 `sort()` 函数,并将 `x`、`y` 和 `z` 的地址作为参数传递给它。最后,我们打印出排序后的结果。