Create a C function that takes a stack using linked lists.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter18: Stacks And Queues
Section: Chapter Questions
Problem 21SA
icon
Related questions
Question

Create a C function that takes a stack using linked lists.

Fill in the "Write your code" sections appropriately.

Enter choice:
1.to push a value on_the stackJ
2 to pop a value off_the_stack.J
3.to end program
:1J
Enter an integer:3.
The stack is:3.--> NULLJ
:1J
Enter an integer:4.J
The stack is: 4.--> 3.--> NULLJ
:1J
Enter an integer: 5.J
The stack is: 5.--> 4 --> 3.--> NULL .d
:2J
The popped value is 5. J
The stack is: 4--> 3 --> NULL
:2J
The popped value is 4.J
The stack is: 3.--> NULLJ
:2J
The popped value is 3.
The stack is empty.
:2J
The stack is empty.
:3J
End of run..
Transcribed Image Text:Enter choice: 1.to push a value on_the stackJ 2 to pop a value off_the_stack.J 3.to end program :1J Enter an integer:3. The stack is:3.--> NULLJ :1J Enter an integer:4.J The stack is: 4.--> 3.--> NULLJ :1J Enter an integer: 5.J The stack is: 5.--> 4 --> 3.--> NULL .d :2J The popped value is 5. J The stack is: 4--> 3 --> NULL :2J The popped value is 4.J The stack is: 3.--> NULLJ :2J The popped value is 3. The stack is empty. :2J The stack is empty. :3J End of run..
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
typedef struct node {
int data;
struct node *nextPtr;
}NODE;
void push(NODE **stack, int value){
// Write your code.
int pop(NODE **stack){
// Write your code.
int isEmpty(NODE **stack){
if ((*head) == NULL) {
printf("The stack is empty is empty. \n");
void printStack (NODE *head) {
// Write your code.
void instructions(void){
printf("Enter choice:\n");
printf("1 to push a value on the stack\n");
printf("2 to pop a value off the stack\n");
printf("3 to end program\n");
int main(void){
srand(20); // Seed fix.
NODE *stackPtr = NULL;
int choice, value;
instructions();
printf(": ");
scanf("d", &choice);
while(choice != 3){
switch(choice){
case 1:
printf("Enter an integer: ");
scanf ("d", &value);
push(&stackPtr, value);
printStack (stackPtr); // Note that we used stackPtr instead of &stackPtr'.
break;
case 2:
if (!isEmpty(&stackPtr)){
printf("The popped value is d. \n", pop(&stackPtr));
printStack(stackPtr);
break;
default:
printf("Invalid choice. \n");
instructions():
break;
printf(": ");
scanf ("d", &choice);
printf("End of run. \n");
return e;
Transcribed Image Text:#include <stdio.h> #include <stdlib.h> #include <time.h> typedef struct node { int data; struct node *nextPtr; }NODE; void push(NODE **stack, int value){ // Write your code. int pop(NODE **stack){ // Write your code. int isEmpty(NODE **stack){ if ((*head) == NULL) { printf("The stack is empty is empty. \n"); void printStack (NODE *head) { // Write your code. void instructions(void){ printf("Enter choice:\n"); printf("1 to push a value on the stack\n"); printf("2 to pop a value off the stack\n"); printf("3 to end program\n"); int main(void){ srand(20); // Seed fix. NODE *stackPtr = NULL; int choice, value; instructions(); printf(": "); scanf("d", &choice); while(choice != 3){ switch(choice){ case 1: printf("Enter an integer: "); scanf ("d", &value); push(&stackPtr, value); printStack (stackPtr); // Note that we used stackPtr instead of &stackPtr'. break; case 2: if (!isEmpty(&stackPtr)){ printf("The popped value is d. \n", pop(&stackPtr)); printStack(stackPtr); break; default: printf("Invalid choice. \n"); instructions(): break; printf(": "); scanf ("d", &choice); printf("End of run. \n"); return e;
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 5 images

Blurred answer
Knowledge Booster
Functions
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning