首页主机资讯c语言怎么交换两个结构体

c语言怎么交换两个结构体

时间2023-12-10 08:42:03发布访客分类主机资讯浏览583
导读:C语言中,可以通过使用临时变量来交换两个结构体的值。 以下是一个示例代码: #include<stdio.h> #include<string.h> // 定义结构体 struct Student { ch...

C语言中,可以通过使用临时变量来交换两个结构体的值。

以下是一个示例代码:

#includestdio.h>
    
#includestring.h>


// 定义结构体
struct Student {
    
    char name[20];
    
    int age;

}
    ;


void swap(struct Student *s1, struct Student *s2) {
    
    struct Student temp;
     // 临时变量
    temp = *s1;
     // 将s1的值拷贝给temp
    *s1 = *s2;
     // 将s2的值拷贝给s1
    *s2 = temp;
 // 将temp的值拷贝给s2
}


int main() {
    
    struct Student s1, s2;
    
    
    // 初始化s1的值
    strcpy(s1.name, "John");
    
    s1.age = 20;
    
    
    // 初始化s2的值
    strcpy(s2.name, "Alice");
    
    s2.age = 25;
    
    
    printf("交换前的值:\n");
    
    printf("s1:name = %s, age = %d\n", s1.name, s1.age);
    
    printf("s2:name = %s, age = %d\n", s2.name, s2.age);
    
    
    // 调用swap函数交换s1和s2的值
    swap(&
    s1, &
    s2);
    
    
    printf("交换后的值:\n");
    
    printf("s1:name = %s, age = %d\n", s1.name, s1.age);
    
    printf("s2:name = %s, age = %d\n", s2.name, s2.age);
    
    
    return 0;

}
    

在上述代码中,我们定义了一个Student结构体,并声明了一个swap函数来交换两个结构体的值。通过在main函数中初始化两个结构体的值,并调用swap函数来交换它们的值。最后,我们打印交换后的结果。

输出结果如下:

交换前的值:
s1:name = John, age = 20
s2:name = Alice, age = 25
交换后的值:
s1:name = Alice, age = 25
s2:name = John, age = 20

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: c语言怎么交换两个结构体
本文地址: https://pptw.com/jishu/575905.html
win10资源管理器如何打开 怎么用python进行预测数据

游客 回复需填写必要信息