Implementation of sort command

Write a program to implement sort command.

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include"fileinfo.h"
void Sort_Accordig_to_Line_Length(FILE*,char*);
int main()
{
	FILE *fp;
	char file[32];
	printf("Enter file name : ");
	scanf("%[^\n]",file);
	fp = fopen(file,"r");
	if(fp == NULL)
	{
		printf("file is not present in this directoty\n");
		return 0;
	}
	Sort_Accordig_to_Line_Length(fp,file);
	return 0;
}
void Sort_Accordig_to_Line_Length(FILE *fp,char *name)
{
	char **p,ch,temp[100],*t;
	int j,i,LineCount,StrLenMax,m;
	LineCount = Get_Total_Lines(fp);
	StrLenMax = Get_Max_String_Length(fp);
	p = (char**)malloc(sizeof(char*) * LineCount);
	for(i = 0; i < LineCount;i++)
	{
		p[i] = (char*)malloc(StrLenMax+1);
		fgets(p[i],StrLenMax+1,fp);
	}
	t = (char*)malloc(sizeof(StrLenMax+1));
	for(i = 0;i < LineCount;i++)
	{
		for(j = i + 1; j < LineCount;j++)
		{
			if(strcmp(p[i],p[j]) > 0)
			{
				t = p[i];
				p[i] = p[j];
				p[j] = t;
			}
		}
	}
	fclose(fp);
	fp = fopen(name,"w");
	for(i = 0;i< LineCount;i++)
	{
		fputs(p[i],fp);
	}
	fclose(fp);
	printf("Sorting Done....\n");
}

Output

cat t1
adb
abd
ace
aed
atd
Enter file name : t1
Sorting Done....
cat t1
abd
ace
adb
aed
atd