给x,y.z三个变量输入三个整数,按从小到大的顺序输出,用指针实现
时间: 2024-09-20 22:01:50 浏览: 64
在C语言中,我们可以使用指针来实现这个功能。假设`x`, `y`, 和 `z` 是三个整型变量,我们首先需要创建指向它们的指针,然后通过指针进行比较并交换,最后遍历一次数组打印出排序后的结果。以下是一个简单的示例:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int x, y, z;
printf("请输入三个整数:");
scanf("%d %d %d", &x, &y, &z);
// 创建指向这三个变量的指针
int *p[3] = {&x, &y, &z};
// 冒泡排序
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3 - i - 1; j++) {
if (*p[j] > *p[j + 1]) {
// 使用swap函数交换元素
swap(p[j], p[j + 1]);
}
}
}
printf("按照从小到大的顺序输出:\n");
for (int i = 0; i < 3; i++) {
printf("%d ", *p[i]); // 输出指针所指向的值
}
printf("\n");
return 0;
}
```
阅读全文