Prog#216: prepare a payslip

/*
prepare a payslip 
Program#216
*/
#include<stdio.h>
main(int argc,char *argv[])
{
union xyz{
struct bio{
char name [20], addr [20];
int age;
float salary;
}a;
char b[sizeof(struct bio)];
};
union xyz m;
FILE *fp1 *fp2;
int i,n,len,c;
float hra, da;
if(argc!=3)
{
printf("error. no.of arg");
return 0;
}
fp1=fopen (argv[1], "r");
if(fp1==NULL)
{
printf("error: file open");
return 0;
}
fp2=fopen (argv[2], "r");
if(fp2==NULL)
{
printf("file open error");
return 0;
}
scanf("%d", & n);
c=0;
while(feof(fp1)==0)
{
c++;
fscanf(fp1, "%d", & m.a. acno);
if(m.a. acno==n)
{
len=(c-1)*sizeof(struct bio);
fseek(fp2, len, 0);
for(i=0;i<sizeof(struct bio);i++)
m.b[i]=getc(fp2);
hra=m.a.salary*(10/100);
da=m.a.salary*(5/100);
printf("%s %d %f %s %f %f", m.a.name, m.a.age, m.a.salary, m.a.addr, hra, da);
}
}
fclose(fp1);
fclose(fp2);
}