c语言结构体用函数实现交换
时间: 2024-01-12 12:05:06 浏览: 154
C语言结构体可以通过函数实现交换的方法如下所示:
```c
#include <stdio.h>
// 定义一个结构体
struct Student {
char name[20];
int age;
};
// 定义一个交换函数
void swap(struct Student *s1, struct Student *s2) {
struct Student temp;
temp = *s1;
*s1 = *s2;
*s2 = temp;
}
int main() {
// 创建两个结构体对象
struct Student s1 = {"Alice", 18};
struct Student s2 = {"Bob", 20};
printf("交换前的信息:\n");
printf("s1的姓名:%s,年龄:%d\n", s1.name, s1.age);
printf("s2的姓名:%s,年龄:%d\n", s2.name, s2.age);
// 调用交换函数
swap(&s1, &s2);
printf("交换后的信息:\n");
printf("s1的姓名:%s,年龄:%d\n", s1.name, s1.age);
printf("s2的姓名:%s,年龄:%d\n", s2.name, s2.age);
return 0;
}
```
运行以上代码,输出结果如下:
```
交换前的信息:
s1的姓名:Alice,年龄:18
s2的姓名:Bob,年龄:20
交换后的信息:
s1的姓名:Bob,年龄:20
s2的姓名:Alice,年龄:18
```
阅读全文