微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c语言中两个值的排序,指针在函数间的传递

c语言中两个值的排序,指针在函数间的传递。

1、

#include <stdio.h>

void sap(int *x, int *y)
{
    int tmp;
    tmp = *x;
    *x = *y;
    *y = tmp;
}

void sort2(int *n1, int *n2)  // n1和n2为指针变量,接收实参&a和&b后成为指向a和b的指针, 
{
    if(*n1 > *n2)
        sap(n1, n2); //n1和n2前面不能使用指针运算符&,因为sap函数的形参为指针变量,需要指针作为参数,因此使用n1和n2指针即可,指针x、n1共同指向a,指针y、n2共同指向b。 
}

int main(void)
{
    int a, b;
    puts("please input two integers.");
    printf("a = "); scanf("%d", &a);
    printf("b = "); scanf("%d", &b);
    
    sort2(&a, &b);
    
    printf("\na = %d\n", a);
    printf("b = %d\n", b);
    
    return 0;
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐