从键盘输入三个整数x,y和z,求出其中最大的数,用上指针
时间: 2023-04-05 18:05:14 浏览: 276
可以使用指针来实现这个功能,代码如下:
```
#include <stdio.h>
void max(int *x, int *y, int *z, int *max_num) {
if (*x > *y && *x > *z) {
*max_num = *x;
} else if (*y > *x && *y > *z) {
*max_num = *y;
} else {
*max_num = *z;
}
}
int main() {
int x, y, z, max_num;
printf("请输入三个整数:");
scanf("%d %d %d", &x, &y, &z);
max(&x, &y, &z, &max_num);
printf("最大的数是:%d\n", max_num);
return 0;
}
```
这个程序可以从键盘输入三个整数,然后使用指针来比较它们的大小,最终输出最大的数。
相关问题
题目是关于三个整数 x、y、z 的问题,要求设定三个指针变量 p1、p2 和 p3,分别指向 x、y 和 z。然后通过指针变量的改变顺序,交换三个变量的值。最后,要求通过键盘输入,获取 x、y 和 z 的原值和新值。
好的,这是一个指针的基础应用题目。我们可以按照如下步骤实现:
1. 定义三个整数变量 x、y、z,并初始化。
```c++
int x = 1, y = 2, z = 3;
```
2. 定义三个指针变量 p1、p2 和 p3,并分别指向 x、y 和 z。
```c++
int *p1 = &x, *p2 = &y, *p3 = &z;
```
3. 通过指针变量的改变顺序,交换三个变量的值。例如,将 p1 指向的值赋给 p3 指向的变量,将 p2 指向的值赋给 p1 指向的变量,依此类推。
```c++
int temp = *p1;
*p1 = *p3;
*p3 = *p2;
*p2 = temp;
```
4. 通过键盘输入获取 x、y 和 z 的原值和新值。
```c++
cout << "请输入 x、y、z 的原值:" << endl;
cin >> x >> y >> z;
cout << "请输入 x、y、z 的新值:" << endl;
cin >> *p1 >> *p2 >> *p3;
```
5. 输出交换后的结果。
```c++
cout << "交换后的结果为:" << endl;
cout << "x=" << x << ", y=" << y << ", z=" << z << endl;
```
完整的代码如下:
```c++
#include <iostream>
using namespace std;
int main() {
int x = 1, y = 2, z = 3;
int *p1 = &x, *p2 = &y, *p3 = &z;
// 交换三个变量的值
int temp = *p1;
*p1 = *p3;
*p3 = *p2;
*p2 = temp;
// 通过键盘输入获取 x、y 和 z 的原值和新值
cout << "请输入 x、y、z 的原值:" << endl;
cin >> x >> y >> z;
cout << "请输入 x、y、z 的新值:" << endl;
cin >> *p1 >> *p2 >> *p3;
// 输出交换后的结果
cout << "交换后的结果为:" << endl;
cout << "x=" << x << ", y=" << y << ", z=" << z << endl;
return 0;
}
```
希望能对你有所帮助。
有三个整数xxz,设置三个指针变量p1p2p3,分别指向x&。然后通过指针变量使xY.z,三个变量交换顺序,即原来x的值给y,把y的值给z,z的值给x。x,y,z的原值由键盘输入,要求输出x,y,z的原值 和新值
好的,我理解了你的问题。下面是实现交换的 C++ 代码示例:
```c++
#include <iostream>
int main() {
int x, y, z;
std::cin >> x >> y >> z;
int *p1 = &x, *p2 = &y, *p3 = &z;
int temp = *p1;
*p1 = *p2;
*p2 = *p3;
*p3 = temp;
std::cout << "原值为:" << x << " " << y << " " << z << std::endl;
std::cout << "新值为:" << *p1 << " " << *p2 << " " << *p3 << std::endl;
return 0;
}
```
这段代码中,我们首先定义了三个整数变量 `x`、`y`、`z`,并通过 `std::cin` 从键盘读入它们的值。然后,我们定义了三个指针变量 `p1`、`p2`、`p3`,分别指向 `x`、`y`、`z`。接着,我们利用指针变量完成了三个变量的值的交换,最后通过 `std::cout` 输出了原值和新值。
注意:这里交换的是指针所指向的变量的值,而非交换指针本身的值。
阅读全文