用c语言编程实现有三个整型变量i,j,k,设置三个指针变量p1,p2,p3,分别指向i,j,k,然后通过指针变量使i,j,k三个变量的值顺序交换,即把i的原值赋给j,把j的值赋给k,把k的原值赋给i。要求输入i,j,k的原值和新值
时间: 2023-03-05 07:41:29 浏览: 191
下面是用C语言编写的程序实现上述要求:
```
#include <stdio.h>
int main() {
int i, j, k;
int *p1, *p2, *p3;
int new_i, new_j, new_k;
// 获取i、j、k的原始值
printf("请输入i、j、k的原始值,用空格分隔:");
scanf("%d %d %d", &i, &j, &k);
// 分别将p1、p2、p3指向i、j、k
p1 = &i;
p2 = &j;
p3 = &k;
// 交换i、j、k的值
int temp = *p1;
*p1 = *p2;
*p2 = *p3;
*p3 = temp;
// 获取i、j、k的新值
new_i = *p1;
new_j = *p2;
new_k = *p3;
// 输出结果
printf("i原值:%d,新值:%d\n", i, new_i);
printf("j原值:%d,新值:%d\n", j, new_j);
printf("k原值:%d,新值:%d\n", k, new_k);
return 0;
}
```
程序中先定义了三个整型变量i、j、k和三个指针变量p1、p2、p3。然后通过scanf函数获取i、j、k的原始值,并分别将p1、p2、p3指向i、j、k。接下来通过指针变量交换i、j、k的值,并获取它们的新值。最后使用printf函数输出i、j、k的原始值和新值。
使用该程序时,需要在命令行中输入i、j、k的原始值,程序会自动计算新值并输出结果。
阅读全文