实现一个函数void swap(int* a, int* b),使交换*a和*b的值。 在main函数中输入两个正整数,调用swap函数交换两个变量地址中存储的值,然后输出交换后的两个值。 注: 请使用指针变量来完成功能,不要直接颠倒输出C++
时间: 2024-12-20 12:21:23 浏览: 29
c语言swap(a,b)值交换的4种实现方法
5星 · 资源好评率100%
在C++中,你可以通过指针来实现这个`swap`函数。下面是一个简单的示例:
```cpp
#include <iostream>
// 定义swap函数,接受两个指向整数的指针作为参数
void swap(int* a, int* b) {
// 使用临时变量保存a的值
int temp = *a;
// 将a的值改为b的值
*a = *b;
// 将b的值改为temp(即原来的a的值)
*b = temp;
}
int main() {
// 输入两个整数
int num1, num2;
std::cout << "请输入第一个整数: ";
std::cin >> num1;
std::cout << "请输入第二个整数: ";
std::cin >> num2;
// 获取这两个数字的地址并传递给swap函数
int* ptr1 = &num1;
int* ptr2 = &num2;
// 调用swap函数交换它们的值
swap(ptr1, ptr2);
// 输出交换后的结果
std::cout << "交换后的第一个整数: " << *ptr1 << "\n";
std::cout << "交换后的第二个整数: " << *ptr2 << "\n";
return 0;
}
```
当你运行这个程序时,它会提示你输入两个整数,然后交换它们并打印出结果。注意,这里的`swap`函数是在内存地址上操作,而不是交换数字本身。
阅读全文