• c语言中实现两个值互换的函数


    c语言中实现两个值互换的函数。

    1、

    #include <stdio.h>
    
    void swap(int n1, int n2)
    {
        int tmp;
        tmp = n1;
        n1 = n2;
        n2 = tmp;
    }
    
    int main(void)
    {
        int a, b;
        puts("please input two integers.");
        printf("a = "); scanf("%d", &a);
        printf("b = "); scanf("%d", &b);
        
        swap(a, b);  //a、b作为实参传递给n1和n2,n1和n2实现了互换,但是值传递是单向的,n1和n2的值并不能返回到实参a、b中,因此a,b还是原来的值 
        
        printf("swapped a = %d
    ", a);
        printf("swapped b = %d
    ", b);
        
        return 0;
    }

    2、将指针作为实参,可以对该指针指向的对象,也就是实参进行修改

    #include <stdio.h>
    
    void swap2(int *n1, int *n2)
    {
        int tmp;
        tmp = *n1;
        *n1 = *n2;
        *n2 = tmp;    
    } 
    
    int main(void)
    {
        int a, b;
        puts("please input two integers.");
        printf("a = "); scanf("%d", &a);
        printf("b = "); scanf("%d", &b);
        
        swap2(&a, &b); //将a和b的指针作为实参传递给指针变量n1和n2,n1和n2称为指向a和b的指针,*n1和*n2分别为a和b的别名,对*n1和n2进行修改,就相当于对a和b进行修改 
        
        printf("
    swapped a = %d
    ",a);
        printf("swapped b = %d
    ", b);
        
        return 0;
    }

  • 相关阅读:
    python--执行文件的绝对路径
    python----slots属性安全类
    linux----LAMP之编译安装apache
    MySQL----alter table modify | change的不同
    数据库5
    数据库4
    数据库3
    数据库2
    数据库1
    MySQL exists 和 not exists 的用法
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/14824561.html
Copyright © 2020-2023  润新知