Why AddSalesMan() function cannot execute?Code:typedef struct{
int ID;
char name[50];
double hor_total;
}group;
group salesman[SIZE];
void sale_menu();
void AddSalesMan();
int nextid();
void sale_menu(int menu)
{
printf("Sales Processing System\n");
printf("-----------------------\n\n");
printf("1. Add Salesman Records\n");
printf("2. Reports Generation\n");
printf("3. Modify Salesman Records\n");
printf("4. Delete Salesman Records\n\n");
printf("0. Exit\n");
printf("Your choice: ");
scanf("%d", &menu);
}
void AddSalesMan()
{
FILE *inSales;
int a, b;
if ( (inSales = fopen("sales.txt","a")) == NULL)
printf("Cannot open sales.txt file.");
else
{
fprintf(inSales,"\n");
for(a=0; a<SIZE; a++)
{
fprintf(inSales,"S%04d|",salesman[a].ID);
for (b=0; b<4; b++)
{
printf("Quarter %d: ",b+1);
scanf(" %lf", &sale[a][b]);
fprintf(inSales,"%lf|",sale[a][b]);
}
}
}
fclose(inSales);
}
int nextid(int currentId, int isReset)
{
static int lastId = 0;
if (isReset)
{
lastId = currentId;
}
return ++lastId;
}
// function main begins program executionvoid main()
{
// file pointer for nextid.txt
FILE *readId;
// variable declaration
int a, b, c = 0, last, getMenu = 0;
double ver_total = 0, max = 0;
int id = 0, lastId, resetId = 0;
// if readId(open nextid.txt) is NULL, display message
if ( (readId = fopen("nextid.txt","r")) == NULL)
printf("Cannot open nextid.txt file");
else
{
// read previous id numbering from nextid.txt
fscanf(readId,"%d",&lastId);
// Pass lastId and resetId arguments to nextid function call
nextid(lastId, resetId);
}
// close readId file pointer
fclose(readId);
// Initialize salesman id and salesman horizontal total value
for(a=0; a<SIZE; a++)
{
salesman[a].ID = nextid(lastId, resetId);
salesman[a].hor_total = 0;
}
// call sale_menu function
sale_menu(getMenu);
// if getMenu = 1, call AddSalesMan function
if (getMenu == 1)
AddSalesMan();
}