Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Help me, please. I'm creating a phone log system in c language using a stack single linked list, it seems that everything is working well

Help me, please.

I'm creating a phone log system in c language using a stack single linked list, it seems that everything is working well but the delete option always gives me a system break after I put the input. Can someone fix it? The delete option should delete only the top memory input and return to the main after the delete process.

And also can you add or modify in a delete, display, and search option, if there is no phone log history or output memory, print "The Phone Number List is Empty".

#include

#include

struct node

{

char firstname[20];

char lastname[20];

long int number;

struct node *next;

};

struct node *head=NULL;

struct node *getnode()

{

return((struct node *)malloc(sizeof(struct node)));

}

void display(struct node *head)

{

struct node *temp;

temp=head;

printf(" FULL NAME\t|\tPHONE NUMBER ");

while(temp!=NULL)

{

printf(" %s %s\t|\t%d ",temp->firstname,temp->lastname,temp->number); /* number is long int */

temp=temp->next;

}

}

void insert()

{

struct node *temp,*newnode;

newnode=getnode();

temp=head;

while(temp->next!=NULL)

{

temp=temp->next;

}

printf("Enter First name: ");

scanf("%s",newnode->firstname);

printf("Enter Last name: ");

scanf("%s",newnode->lastname);

printf("Enter number: ");

scanf("%ld",&newnode->number);

temp->next=newnode;

newnode->next=NULL;

display(head);

}

struct node *create()

{

struct node *temp,*newnode;

if(head!=NULL)

insert();

else

{

newnode=getnode();

head=newnode;

temp=head;

printf(" Enter First name: ");

scanf("%s",newnode->firstname);

printf("Enter Last name: ");

scanf("%s",newnode->lastname);

printf("Enter number: ");

scanf("%ld",&newnode->number);

newnode->next=NULL;

display(head);

}

}

void search()

{

struct node *temp;

char first[20], last[20]; /* space for input */

temp=head;

printf(" Enter name to be searched (FULL NAME) : ");

scanf("%s",first); /* you dont need '&' operator for string*/

scanf("%s",last);

while((temp->firstname==first)&&(temp->lastname==last))

{

temp=temp->next;

}

printf(" FULL NAME\t|\tPHONE NUMBER ");

printf(" %s %s\t|\t%d ",temp->firstname,temp->lastname,temp->number); /* number is long int */

}

void del()

{

struct node *pretemp,*temp;

char f[20],l[20]; /* you need a space to store input */

temp=head;

pretemp=head->next;

printf(" Enter name : ");

scanf("%s",f); /* you dont need '&' operator to access a string */

scanf("%s",l);

while(temp!=NULL){

if((pretemp->firstname==f)&&(pretemp->lastname==l))

{

printf("%s ",temp->firstname);

printf("%s ",temp->lastname);

printf("%ld ",temp->number); /* 'number' is long int */

temp=pretemp->next;

free(pretemp);

main();

}

else

{

temp=temp->next;

pretemp=pretemp->next;

}

} /* missing curly bracket */

}

int main()

{

int op,ch;

do{

printf(" -------Welcome-------- ");

printf("1.Create 2.Display 3.Delete 4.Search ");

printf(" Enter your choice: ");

scanf("%d",&ch);

switch(ch)

{

case 1:

create();

break;

case 2:

display(head);

break;

case 3:

del();

break;

case 4:

search();

break;

default:

printf (">: Invalid Input! No action being taken! ");

break;

}

printf(" Do you want to quit ? 1 for no / 0 for yes: ");

scanf("%d",&op);

}while(op);

return 0;

}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions

Question

What are the key management information requirements? 120150 words

Answered: 1 week ago

Question

1. If you were Dawn, what decision would you make and why?

Answered: 1 week ago

Question

Explain the various techniques of Management Development.

Answered: 1 week ago