编写一个子函数Swap,在主函数中给两个参数分别赋值10和8,将其在子函数中交换后,在主函数中输出。(要求使用指针完成)
时间: 2024-06-14 13:05:27 浏览: 82
以下是使用指针完成参数交换的C语言代码示例:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int x = 10;
int y = 8;
printf("Before swap: x = %d, y = %d\n", x, y);
swap(&x, &y);
printf("After swap: x = %d, y = %d\n", x, y);
return 0;
}
```
运行结果:
```
Before swap: x = 10, y = 8
After swap: x = 8, y = 10
```
在上述代码中,我们定义了一个名为`swap`的子函数,该函数接受两个指针作为参数。在函数内部,我们使用临时变量`temp`来交换指针所指向的值。通过传递变量的地址给指针参数,我们可以在子函数中修改主函数中的变量。
在主函数中,我们声明了两个整型变量`x`和`y`,并将它们分别赋值为10和8。然后,我们调用`swap`函数,并将`x`和`y`的地址作为参数传递给它。最后,我们在主函数中输出交换后的结果。
相关问题
设计一个子函数,,将任意2个整数交换,并在主函数中调用此函数。
以下是一个使用 Python 编写的例子:
```python
def swap(a, b):
"""交换 a 和 b 的值"""
a, b = b, a
return a, b
# 主函数
x = 10
y = 20
print("交换前:x =", x, "y =", y)
x, y = swap(x, y)
print("交换后:x =", x, "y =", y)
```
运行结果如下:
```
交换前:x = 10 y = 20
交换后:x = 20 y = 10
```
在 `swap` 函数中,我们使用了 Python 中的解构赋值语法,将 `a` 和 `b` 的值互换。在主函数中,我们调用 `swap` 函数,并将返回的结果重新赋值给 `x` 和 `y`,实现了交换两个变量的值。
阅读全文