用c语言写有三个整数xyz,设置三个指针变量p1p2p3,分别指向xyz,然后通过指针变量使xyz三个变量交换顺序,即原来的x得值给y,把y的值给z,z的值给x。xyz的原值由键盘输入,要求输出xyz的原值和新值
时间: 2024-03-08 21:49:40 浏览: 109
C语言实验-有3个整数a,b,c,由键盘输入,输出其中最大的数(或最小的数)。
以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int x, y, z;
printf("请输入三个整数:");
scanf("%d %d %d", &x, &y, &z);
printf("原始值:x=%d, y=%d, z=%d\n", x, y, z);
int *p1 = &x, *p2 = &y, *p3 = &z;
int temp = *p1;
*p1 = *p3;
*p3 = *p2;
*p2 = temp;
printf("交换后:x=%d, y=%d, z=%d\n", x, y, z);
return 0;
}
```
以上代码中,使用了 `scanf()` 函数从键盘输入三个整数 `x`、`y`、`z`,并输出它们的原始值。接着,定义指针变量 `p1`、`p2`、`p3` 分别指向 `x`、`y`、`z`,并使用指针变量进行交换。最后输出交换后的结果。
需要注意的是,在使用 `scanf()` 函数时,需要使用 `&` 符号取得变量的地址,以便将输入的值存储到对应的变量中。
阅读全文