Replace line

Write a program to replace one line with another line in a file.

#include<stdio.h>
#include"fileinfo.h"
void Replace_Line_in_File(FILE*,int,char*);
int main()
{
	FILE *fptr;
	int LinetoReplace;
	char fileName[32];
	printf("Enter FileName = ");
	scanf("%[^\n]",fileName);
	fptr = fopen(fileName,"r");
	if(fptr == NULL)
	{
		printf("file does not present in this directory\n");
		return 0;
	}
	printf("Which line do you want to Replace = ");
	scanf("%d",&LinetoReplace);
	Replace_Line_in_File(fptr,LinetoReplace,fileName);
	return 0;
}
void Replace_Line_in_File(FILE* fp,int line,char* file)
{
	int LineCount,MaxStrLen,i;
	char StringToAdd[100],**cp;
	LineCount = Get_Total_Lines(fp);
	if(line >= 1 && line <= LineCount)
	{
		line--;
		printf("Enter String to Replace\n");
		scanf(" %[^\n]",StringToAdd);
		cp = (char**)malloc(sizeof(char*)*LineCount);
		MaxStrLen = Get_Max_String_Length(fp);
		for(i = 0;i<LineCount;i++)
		{
			cp[i] = (char*)malloc(MaxStrLen+1);
			fgets(cp[i],MaxStrLen+1,fp);
		}
		fclose(fp);
		fp = fopen(file,"w");
		for(i = 0;i<LineCount;i++)
		{
			if(i == line)
			{
				fputs(StringToAdd,fp);
				fputc('\n',fp);
			}
			else
				fputs(cp[i],fp);
		}
		fclose(fp);
		printf("Replacing Done.....\n");
	}
	else
	{
		fclose(fp);
		printf("Invalid Line Number\n");
	}
}

Note: File name d1 is present in the current working directory.

cat d1
Lot To Learn
BlackBerry
Iphone
Incredible India

Output

Enter FileName = d1
Which line do you want to Replace = 2
Enter String to Replace
BlackBerry Z10
Repacling Done.....
Lot To Learn
BlackBerry Z10
Iphone
Incredible India