当前位置: 代码迷 >> C语言 >> 一个简单的问题shell sort
  详细解决方案

一个简单的问题shell sort

热度:665   发布时间:2006-07-08 04:45:14.0
一个简单的问题shell sort
本人现在在新加坡~刚学c语言,可是bt老师居然让我们做没有学过的project---shell sort,
题目是
3,15,28,32,7,13,23,19
排列~(中间过程不省略),本想自己解决可是从国内带的书没有这个部分,这边的书又太贵250rmb一本又是英文~下周就要交了~感谢大哥们棒棒小弟哦!谢谢
搜索更多相关的解决方案: sort  shell  

----------------解决方案--------------------------------------------------------

#include<stdio.h>
void shellsort(int arrray[],int n);
void main(void)
{
int ar[8]={3,15,28,32,7,13,23,19};
int i;
shellsort(ar,8);
for (i=0;i<8;i++)
printf("%d ",ar[i]);
}
void shellsort(int r[],int n)
{
int i,j,d;
int bool;
int x;
d=n;
do
{
d=d/2;
do
{

bool=1;
for(i=0;i<n-d;i++)
{
j=i+d;
if(r[i]>r[j])
{
x=r[i];
r[i]=r[j];
r[j]=x;
bool=0;
}
}
}while(!bool);
}while(d>1);
}


----------------解决方案--------------------------------------------------------

谢谢了阿~但还有个问题~按你的设计~直接出来答案~可是施行时我还需要中间的变化过程展现出来~怎么弄呢


----------------解决方案--------------------------------------------------------
下次你领薪水时不知道会不会让2楼的替你领薪水.
----------------解决方案--------------------------------------------------------
printf 没学过吗?也不怪人家说你啊。。。。。
----------------解决方案--------------------------------------------------------

真的没接触过~具体点怎么写呢~~谢谢哦


----------------解决方案--------------------------------------------------------
新加坡学什么的?计算机??

----------------解决方案--------------------------------------------------------