搜索
查看: 705|回复: 6
打印 上一主题 下一主题

这怎么是错的

[复制链接]
跳转到指定楼层
楼主
发表于 2016-2-5 14:40:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>
int a[101],n;//定义全局变量,这两个变量需要在子函数中使用

void quicksort(int left,int right)
{
        int i,j,t,temp;
    if(left>right)
       return;


    temp=a[left];//temp中存的就是基准数
    i=left;
    j=right;
    while(i!=j)
    {
        //顺序很重要,要先从右往左找
        while(a[j]>=temp && i<j)
              j--;
        //再从左往右找
        while(a<=temp && i<j)
              i++


        //交换两个数在数组中的位置
        if(i<j)//当哨兵i和哨兵j没有相遇时
        {
            t=a;
            a=a[j];
            a[j]=t;
        }
    }
    //最终将基准数归位
    a[left]=a;
    a=temp;


    quicksort(left,i-1);//继续处理左边的,这里是一个递归的过程
    quicksort(i+1,right);//继续处理右边的,这里是一个递归的过程
    return;
}


int main()
{
    int i,j;
    //读入数据
    scanf("%d",&n);
    for(i=1;i<=n;i++)
        scanf("%d",&a);


    quicksort(1,n); //快速排序调用


    //输出排序后的结果
    for(i=1;i<=n;i++)
        printf("%d",a);


        getchar();getchar();
        return 0;
}


怎么是错的?

最佳答案

查看完整内容

从左往右找的时候,少了个分号,不会看错误信息吗?
沙发
发表于 2016-2-5 14:40:54 | 只看该作者
从左往右找的时候,少了个分号,不会看错误信息吗?
板凳
发表于 2016-2-6 23:19:42 | 只看该作者
还有,数组名和变量名混用
地板
发表于 2016-2-13 19:33:21 | 只看该作者
某一行少了个分号
5#
发表于 2016-2-13 19:33:42 | 只看该作者
看一下下面的回复就可以了
6#
 楼主| 发表于 2016-2-16 09:25:41 | 只看该作者
本帖最后由 jiangbowei 于 2016-2-16 09:27 编辑

谢谢你们的帮助!
7#
发表于 2016-2-28 12:41:48 | 只看该作者
            
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表