Prog#204 B: display lines that are not having the pattern

/*
display lines that are not having the pattern
Program#204 B
*/
#include<stdio.h>
main(int argc,char *argv[])
{
int i,j,k,l,g,n,f;
char a[80];
FILE *fp;
if(argc<3)
{
printf("error. no.of arg");
return 0;
}
for(i=2; i<=argc; i++)
{
fp=fopen (argv[i], "r");
if(fp==NULL)
{
printf("file open error");
return 0;
}
n=0;
for(g=0;(a[g]=getc(fp))!=EOF;g++)
{
if(a[g]=='\n')
{
n++;
f=0;
a[g]='\0';
j=0;
while(a[j])
{
k=j;
for(l=0;((argv[i][l]==a[k])&&(argv[i][l]!='\0'));l++)
k++;
if(argv[i][l]=='\0')
f=1;
j++;
if(f==0)
printf("%d %s", n, a);
j++;
}
g=-1;
}
}
fclose(fp);
}
}