Get the most accurate NCERT Solutions for Class 12 Computer Science Chapter 3 Stack here. Updated for the 2025-26 academic session, these solutions are based on the latest NCERT textbooks for Class 12 Computer Science. Our expert-created answers for Class 12 Computer Science are available for free download in PDF format.
Detailed Chapter 3 Stack NCERT Solutions for Class 12 Computer Science
For Class 12 students, solving NCERT textbook questions is the most effective way to build a strong conceptual foundation. Our Class 12 Computer Science solutions follow a detailed, step-by-step approach to ensure you understand the logic behind every answer. Practicing these Chapter 3 Stack solutions will improve your exam performance.
Class 12 Computer Science Chapter 3 Stack NCERT Solutions PDF
Question 2. Evaluate the following postfix expression: (show status of Stack after each operation)
100,40,8,/,20,10,-,+,*
Answer:

Question 3. Evaluate the following postfix expression. Show the status of stack after execution of each
operation separately:
T, F, NOT, AND, T, OR, F, AND
Answer: Thus the stack will have False Value
![]()

Question 4. Evaluate the following postfix expression. Show the status of stack after execution of each operation separately:
F, T, NOT, AND, F, OR, T, AND
Answer:


Question 5. Evaluate the following postfix expression using a stack and show the contents of stack after execution of each operation:
5,3,2, *, 4,2, /, -,*
Answer:

Question 6. Evaluate the following POSTFIX notation. Show status of Stack after every step of evaluation (i.e. after each operation)
False NOT, True, AND, True, False, OR, AND
Answer:

Question 7. Top is a pointer variable pointing to the top element of a stack, with each node having the following structure declaration:
struct Stack {int Data, Stack * Next};
Considering the above explanation, what will the following code do ?
int count = 0, Sum = 0;
Stack * Temp = Top;
while (Temp - > Next! = NULL)
{ count + +;
Sum + = Temp - > Data;
Temp Temp - > Next;
}
count < < Sum / count;
Answer:
It will calculate the average of stack values.
Question 8. Convert the expression ((x * 3 + y * 3 + z * 3) / (x + y + z)) into postfix expression. Show the content of the stack during the conversion.
Answer:
Given expression : ((x * 3 + y * 3 + z * 3) / (x + y + z))
((x * 3 + y * 3 + z * 3) / (x + y + z))


Question 9. Evaluate the following POSTFIX expression, show the status of Stack after execution of each operation separately:
45,45,+,32,20,10,/,-,*
Answer:


Question 10. Convert the following Infix expression to its equivalent Postfix expression, showing the stack contents for each step of conversion.
P/Q+(R-T)*U
Answer: P/Q+(R-T)*U = (P/Q+(R-T)*U)

Short Answer Type Questions-II
Question 1. Write the definition of a member function Pop ()
in C++, to delete a book from a dynamic stack of TEXTBOOKS considering the following code is already included in the program.
Struct TEXTBOOKS
{
Char ISBN [20]; Char TITLE [80]; TEXTBOOKS *Link;
};
class STACK
{
TEXTBOOKS *Top;
public :
STACK () {Top = NULL;}
void Push ();
. void pop );
-STACK ();
};
Answer:
void STACK : : POP ()
{
if (Top ! = NULL)
{
TEXTBOOKS *Temp;
Temp=Top;
cout<< TOP- >ISBN<<Top-
TITLE<<"delected"<<endl;
Top=Top-Link;
delete Temp;
}
else
cout<<"Stack Empty"<<endl;
}
OR
Any other correct equivalent function definition
Question 2. Write the defintion of a member function PUSH () in C+ +, to add a new book in a dynamic stack of BOOKS considering the following code is already included in the program:
struct BOOKS
{
Char ISBN [20]; TITLE[80];
BOOKS *Link;
};
class STACK
{
BOOKS *Top;
public :
STACK () {Top = NULL;}
void PUSH ();
Void POP ();
-STACK ();
};
Answer:
void STACK :: PUSH ()
{
BOOKS *Temp;
Temp=New BOOKS;
gets (Temp->ISBN);
gets (Temp->TITLE);
Temp->Link =Top;
Top=Temp;
}
OR
Any other correct equivalent function definition
Question 3. Convert the expression (A-5)*6+(10/B)/2 to corresponding postfix expression. Also show the status of operator stack after each step.
Answer: ((A-5)*6+(10/B)/2)


Long Answer Type Questions
Question 1. Convert the following Infix expression to its equivalent Postfix expression, showing the stack contents for each step of conversion.
A/(B+C)*D-E
Answer:
A/ (B + C) *D-E

Question 2. Write definition for a function DISPMID (int A[][5], int R, int C) in C+ + to display the elements of middle row and middle column from a two dimensional array A having R number of rows and C number of columns.
For example, if the content of array is as follows:

601 516 921 609
Answer:
void DISPMID (int A[] [5] , int R, int C)
{
int mid = (R+C)/2;
for (int i=0; i<c; i++)
{
Cout << A[mid] [i]<<"";
} cout<<endl;
for (int i=0; i<R; i++)
cout << A[i][mid]<<"";
}
Question 3. Convert the following Infix expression to its equivalent Postfix expression, showing the stack contents for each step of conversion.
P/(Q-R)*S+T
Answer:
P/(Q-R)*S+T
BODMAS : PQR-/S*T+
PQR-/S*T+

Question 4. Convert the following infix expression to its equivalent postfix expression, showing the stack contents for each step of conversion:
X/Y+U*(V-W)
Answer:
X / Y + U* (V – W) = ((X / Y) + (U * (V – W)))




Any other method or converting the given Infix expression to its equivalent Postfix expression showing stack contents
Question 5. Evaluate the following postfix expression using stack and show the contents after execution of each.
Answer: Operations : 470,5,4,∧,25,/,6,*


Question 6. Write member functions to perform POP and PUSH operations in a dynamically allocated stack containing the objects of the following structure:
struct Game
{ char Gamename[30];
int numofplayer;
Game *next; } ;
Answer:
struct Game
{
char Gamename[3 0] ;
int numofplayer;
Game *next;
};
class Stack { Game *Top;
public :
Stack ()
{
Top = NULL;
}
void Push();
void Pop();
void display();
-Stack();
} ;
void Stack::Push()
{
Game *temp = new Game;
cout<<"Enter Data : "; gets(temp->Gamename);
cin>>temp->numofplayer;
temp->next =Top;
Top = temp;
}
void Stack:: Pop()
{
if ( Top != NULL)
{
Game *temp = Top;
cout<Gamename<<" Deleted"; Top = Top->next;
delete temp;
}
else
cout<<"Stack is empty....";
}
Question 7. Write a function PUSHBOOK() in C++ to perform insert operation on Dynamic Stack, which contains Book_no and Book_Title. Consider the following definition of NODE, while writing your C+ + code,
struct NODE
{
int Book_No ;
char Book_Title [20];
NODE * Next;
};
Answer:
Void PUSHBOOK (NODE *TOP> int Book_No, char B Title [20])
{
NODE*temp;
temp=new NODE;
temp —> Book_No=Book_No;
Strcpy (temp —> Book_Title, B Title) ;
temp --> Next=NULL ;
if (Top==NULL)
Top=temp;
else
{
temp —> Next=top;
Top==temp;
}
}
Question 8. Write a function POPBOOK( ) in C++ to perform delete operation from a Dynamic Stack, which contains Bno and Title. Consider the following definition of NODE, while writing your C++code.
struct NODE
{
int Bno;
char Title[20] ;
NODE * Link;
} ;
Answer:
node*PopBOOK(node*TOP int Bno, char B Title [20])
{
node*temp;
temp=new node;
temp —>Bno=Bno;
strcpy (temp —>Title, B Title);
temp ->link=NULL:
if (TOP==NULL)
Top=Temp;
else
{
temp —>link=Top;
TOP==temp;
}
}
Question 9. Write the definition of a member function push() for a class Library in C++ to insert a book information in a dynamically allocated stack of books considering the following code is already written as a part of the program struct book
{
int bookid;
char bookname[20];
book*next;
} ;
class Library
{
book*top;
public
Library()
{
top=NULL;
}
void push();
void pop();
void disp() ;
-Library();
};
Answer:
void Library: :push()
{
book*nptr;
nptr=new book;
cout<<"Enter values for bookid and bookname"; cin> >nptr->bookid;
gets(nptr->bookname);
nptr->next =NULL;
if (top==NULL)
top=nptr;
else
{
nptr->next=top,
top=nptr;
}
}
Question 10. Convert the following Infix expression to its equivalent Postfix expression, showing the stack contents for each step of conversion:
U * V + R / (S-T)
Answer: U*V + R/(S-T)
Any other method for converting the given Infix expression to its equivalent Postfix expression showing stack contents.


| NCERT Solutions Class 12 Computer Science Boolean Algebra |
| NCERT Solutions Class 12 Computer Science C++ Revision Tour |
| NCERT Solutions Class 12 Computer Science Chapter 3 Stack |
| NCERT Solutions Class 12 Computer Science Chapter 4 Queue |
| NCERT Solutions Class 12 Computer Science Chapter 8 Database Concepts |
| NCERT Solutions Class 12 Computer Science Chapter 9 Structured Query Language |
| NCERT Solutions Class 12 Computer Science Constructor and Destructor |
| NCERT Solutions Class 12 Computer Science Data File Handling |
| NCERT Solutions Class 12 Computer Science Implementation of OOP Concepts in C++ |
| NCERT Solutions Class 12 Computer Science Networking and Open Source Concepts |
| NCERT Solutions Class 12 Computer Science Object Oriented Programming in C++ |
Important Practice Resources for Class 12 Computer Science
NCERT Solutions Class 12 Computer Science Chapter 3 Stack
Students can now access the NCERT Solutions for Chapter 3 Stack prepared by teachers on our website. These solutions cover all questions in exercise in your Class 12 Computer Science textbook. Each answer is updated based on the current academic session as per the latest NCERT syllabus.
Detailed Explanations for Chapter 3 Stack
Our expert teachers have provided step-by-step explanations for all the difficult questions in the Class 12 Computer Science chapter. Along with the final answers, we have also explained the concept behind it to help you build stronger understanding of each topic. This will be really helpful for Class 12 students who want to understand both theoretical and practical questions. By studying these NCERT Questions and Answers your basic concepts will improve a lot.
Benefits of using Computer Science Class 12 Solved Papers
Using our Computer Science solutions regularly students will be able to improve their logical thinking and problem-solving speed. These Class 12 solutions are a guide for self-study and homework assistance. Along with the chapter-wise solutions, you should also refer to our Revision Notes and Sample Papers for Chapter 3 Stack to get a complete preparation experience.
The complete and updated is available for free on StudiesToday.com. These solutions for Class 12 Computer Science are as per latest NCERT curriculum.
Yes, our experts have revised the as per 2026 exam pattern. All textbook exercises have been solved and have added explanation about how the Computer Science concepts are applied in case-study and assertion-reasoning questions.
Toppers recommend using NCERT language because NCERT marking schemes are strictly based on textbook definitions. Our will help students to get full marks in the theory paper.
Yes, we provide bilingual support for Class 12 Computer Science. You can access in both English and Hindi medium.
Yes, you can download the entire in printable PDF format for offline study on any device.