-cfyjbjonn 2019-04-21 15:04 采纳率: 57.1%
浏览 3619
已采纳

利用指针方法实现两数互换,函数原型为:void swap(int *p1,int *p2);在线等,急

输入3个数x,y,z,按大小顺序排序后输出。
要求:利用指针方法实现两数互换,函数原型为:void swap(int *p1,int *p2);
输入提示:printf("please input 3 number x,y,z");
输出格式:printf("the sorted numbers are:%d,%d,%d\n", );

#include <stdio.h>
#include <stdlib.h>

void swap(int *p1,int *p2)
{
    int temp;
    temp = *p1;
    *p1 = *p2;
    *p2 = temp;
}

int main()
{
    int x,y,z;
    int i,j;
    int m[3];
    printf("please input 3 number x,y,z");
    for(i = 0; i < 3 ;i++)
    {
        scanf("%d",&m[i]);
    }
    for(i = 0; i < 2; i++)
    {
        for(j = 0; j < 3; j++)
        {
            if(m[i] < m[j])
            {
                swap(m[i],m[j]);
            }
        }
    }
    printf("the sorted numbers are:%d,%d,%d\n", m[0],m[1],m[2]);

   return 0;
}

我的代码哪里有错?

  • 写回答

2条回答 默认 最新

  • 吃鸡王者 2019-04-21 15:31
    关注

    swap调用的时候,参数应该是指针啊也,swsp(&m[i],&m[j])

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制