请帮我看看我的这段代码哪儿出错了???
shell.c
#ifndef SHELL_H
#define SHELL_H

void ShellSort(int data[],int count);

#endif

shell.h
#include"shell.h"

void ShellSort(int data[],int count)
{
	int i,temp,j;
	int step=count/2;
	for(i=1;i<count;i++)
	{
		temp=data[i];
		for(j=i-1;j>=0;j--)
		{
			if(data[j]<temp)
				break;
			data[j+1]=data[j];
		}
		data[j]=temp;
	}

}
main.c
#include<stdio.h>
#include"shell.h"
void main()
{
	int data[]={12,334,1,24,456,23,2},i;
	int count=sizeof(data)/sizeof(data[0]);
	ShellSort(data,count);
	for(i=0;i<count;i++)
	{
		printf("%d ",data[i]);
	}
}