qq_29923139 2015-07-21 12:30 采纳率: 0%
浏览 1405

请问怎么在此程序中使比较次数交换次数输出程序中错误在哪里

#include
#include
#include
#define max_len 5

void generate_arr(int r[], int rLen);
void Qsort(int r[], int l, int h);

int main()
{
int i;
int r[max_len];
generate_arr(r, max_len); //使用方式
Qsort(r,0,max_len-1); //调用快速排序
for(i=0; i<max_len; i++) {
printf("%d, ", r[i]);
}
printf("\n");
return 0;
}

/**

  • 生成随机整数序列
  • r数组用于存储随机序列
  • rLen表示随机序列的长度
    */
    void generate_arr(int r[], int rLen)
    {

    int i;
    srand(1);
    for(i=0; i<rLen; i++)
    {
    r[i] = rand();

    }
    }
    void Qsort(int r[], int l, int h)
    {
    int i, j, x;
    int p=0,k=1;
    if (l {
    i = l;
    j = h;
    x =r[i];
    while (i {
    while(i = x)
    {j--;
    p++;
    } /* 从右向左找第一个小于x的数 /
    if(i < j)
    { r[i++] = r[j];
    k=k+1;
    }
    while(i < j && r[i] <= x)
    { i++;
    p++;
    } /
    从左向右找第一个大于x的数 /
    if(i < j)
    { r[j--] = r[i];
    k=k+1;
    }
    }
    r[i]=x;printf("%s%d","compare:",p);
    printf("%s%d","exchange:",k);
    Qsort(r, l, i-1); /
    递归调用 */
    Qsort(r, i+1, h);
    }

    return;
    }

  • 写回答

2条回答

  • threenewbee 2015-07-21 12:36
    关注
    评论

报告相同问题?

悬赏问题

  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
  • ¥15 钢筋实图交点识别,机器视觉代码
  • ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
  • ¥50 400g qsfp 光模块iphy方案
  • ¥15 两块ADC0804用proteus仿真时,出现异常