ccdthte
2021-10-28 23:51
采纳率: 100%
浏览 61

输入三个整数,要求按照从小到大的顺序输出

我是想写一个void类型的字程序。但是不知道哪里有问题,萌新求大佬帮忙解答!


#include<stdio.h>
void stay(int x,int y);
int main() {
    int a, b, c;
    scanf("%d %d %d", &a, &b, &c);
    stay(b,c);
    stay(a,c);
    stay(a,b);
    printf("%d%d%d",a,b,c);
    return 0;
}
void stay(int x,int y) {
    int t;
    if(x>y) {
        t=x;
        x=y;
        y=t;
    }
    return ;
}

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 已采纳

    你的stay是传值运算,stay中的操作对外面的数据没有影响,修改如下:

    void stay(int *x,int *y) 
    {
        int t;
        if(*x>*y) 
        {
            t=*x;
            *x=*y;
            *y=t;
        }
    }
    
    

    main函数中使用的时候,方法如下:
    stay(&b,&c);
    stay(&a,&c);
    stay(&a,&b);

    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题