Question: remove everything that mentions label (even la) from this code, keep symbol and change it to char * symbol, make sure it compiles thank u

remove everything that mentions label (even la) from this code, keep symbol and change it to char * symbol, make sure it compiles thank u

#include

#include

#include

#include

#include

#define NULL 0

int size=0;

void Insert();

void Display();

void Delete();

int Search(char lab[]);void Modify();

struct SymbTab

{

char label[10],symbol[10];

int addr;

struct SymbTab *next;};

struct SymbTab *first,*last;

void main()

{

int op,y;

char la[10];

clrscr();

do

{

printf( \tSYMBOL TABLE IMPLEMENTATION );

printf( \t1.INSERT \t2.DISPLAY \t3.DELETE \t4.SEARCH \t5.MODIFY \t6.END );

printf( \tEnter your option : );

scanf(%d,&op);

switch(op)

{

case 1:

Insert();

break;

case 2:

Display();

break;

case 3:

Delete();

break;

case 4:

printf( \tEnter the label to be searched : );

scanf(%s,la);

y=Search(la);

printf( \tSearch Result:);

if(y==1)

printf( \tThe label is present in the symbol table );

else

printf( \tThe label is not present in the symbol table );

break;

case 5:

Modify();

break;

case 6:

exit(0);

}

}while(op<6);

getch();

}

void Insert()

{

int n;

char l[10];

printf( \tEnter the label : );

scanf(%s,l);

n=Search(l);

if(n==1)

printf( \tThe label exists already in the symbol table \tDuplicate cant be inserted);

else

{

struct SymbTab *p;

p=malloc(sizeof(struct SymbTab));

strcpy(p->label,l);

printf( \tEnter the symbol : );

scanf(%s,p->symbol);

printf( \tEnter the address : );

scanf(%d,&p->addr);

p->next=NULL;

if(size==0)

{

first=p;

last=p;

}

else

{

last->next=p;

last=p;

}

size++;

}

printf( \tLabel inserted );

}

void Display()

{

int i;

struct SymbTab *p;

p=first;

printf( \tLABEL\t\tSYMBOL\t\tADDRESS );

for(i=0;i

{

printf(\t%s\t\t%s\t\t%d ,p->label,p->symbol,p->addr);

p=p->next;

}

}

int Search(char lab[])

{

int i,flag=0;

struct SymbTab *p;

p=first;

for(i=0;i

{

if(strcmp(p->label,lab)==0)

flag=1;

p=p->next;

}

return flag;

}

void Modify()

{

char l[10],nl[10];

int add,choice,i,s;

struct SymbTab *p;

p=first;

printf( \tWhat do you want to modify? );

printf( \t1.Only the label \t2.Only the address \t3.Both the label and address );

printf(\tEnter your choice : );

scanf(%d,&choice);

switch(choice)

{

case 1:

printf( \tEnter the old label : );

scanf(%s,l);

s=Search(l);

if(s==0)

printf( \tLabel not found );

else

{

printf( \tEnter the new label : );

scanf(%s,nl);

for(i=0;i

{

if(strcmp(p->label,l)==0)

strcpy(p->label,nl);

p=p->next;

}

printf( \tAfter Modification: );

Display();

}

break;

case 2:

printf( \tEnter the label where the address is to be modified : );

scanf(%s,l);

s=Search(l);

if(s==0)

printf( \tLabel not found );

else

{

printf( \tEnter the new address : );

scanf(%d,&add);

for(i=0;i

{

if(strcmp(p->label,l)==0)

p->addr=add;

p=p->next;

}

printf( \tAfter Modification: );

Display();

}

break;

case 3:

printf( \tEnter the old label : );

scanf(%s,l);

s=Search(l);

if(s==0)

printf( \tLabel not found );

else

{

printf( \tEnter the new label : );

scanf(%s,nl);

printf( \tEnter the new address : );

scanf(%d,&add);

for(i=0;i

{

if(strcmp(p->label,l)==0)

{

strcpy(p->label,nl);

p->addr=add;

}

p=p->next;

}

printf( \tAfter Modification: );

Display();

}

break;

}

}

void Delete()

{

int a;

char l[10];

struct SymbTab *p,*q;

p=first;

printf( \tEnter the label to be deleted : );

scanf(%s,l);

a=Search(l);

if(a==0)

printf( \tLabel not found );

else

{

if(strcmp(first->label,l)==0)

first=first->next;

else if(strcmp(last->label,l)==0)

{

q=p->next;

while(strcmp(q->label,l)!=0)

{

p=p->next;

q=q->next;

}

p->next=NULL;

last=p;

}

else

{

q=p->next;

while(strcmp(q->label,l)!=0)

{

p=p->next;

q=q->next;

}

p->next=q->next;

}

size;

printf( \tAfter Deletion: );

Display();

}

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!