| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 754 人关注过本帖
标题:shaker排序法,运行时怎么不让程序结果刷屏?
取消只看楼主 加入收藏
☆Jony☆
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2008-2-22
收藏
 问题点数:0 回复次数:0 
shaker排序法,运行时怎么不让程序结果刷屏?
源程序:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

#define MAX 10
#define SWAP(x,y) {int t;t=x;x=y;y=t;}

void shakersort(int []);

int main()
{
    int number[MAX]={0};
    int i;
    srand(time(NULL));
    printf("排序前");
    for(i=0;i<MAX;i++)
    {
      number[i]=rand()%100;
      printf("%d ",number[i]);
    }
    shakersort(number);
    printf("\n");
    return 0;
}

void shakersort(int number[])
{
  int i,left=0,right=MAX-1,shift=0;
  while(left<right)
  {
    //向右进行气泡排序
      for(i=left;i<right;i++)
      {
        if(number[i]>number[i+1])
        {
          SWAP(number[i],number[i+1]);
          shift=i;
        }
      }
      right=i;
      printf("\n往右排序");
      for(i=0;i<MAX;i++)
      {
        printf("%d ",number[i]);
      }
      //向左进行气泡排序
      for(i=right;i>left;i--)
      {
        if(number[i]<number[i-1])
        {
          SWAP(number[i],number[i-1]);
          shift=i;
        }
      }
      left=shift;
      printf("\n向左排序");
      for(i=0;i<MAX;i++)
      {
        printf("%d ",number[i]);
      }
  }
}
结果如下:

未命名.JPG (65.89 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: shaker 结果 运行 
2008-08-24 09:26
快速回复:shaker排序法,运行时怎么不让程序结果刷屏?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035540 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved