SlideShare a Scribd company logo
Q) Session10 a)Execute program to remove negative values from list of values by using
queues
Program:
#include <stdio.h>
#include <stdlib.h>
#define MAX 10
int queue[MAX],f=-1,r=-1;
void enq();
void deq();
void display();
void deletenegative();
main()
{
int n,i;
printf("enter the number of elements");
scanf("%d",&n);
for(i=1;i<=n;i++)
enq();
display();
printf("nAfter deleting negative valuesn");
deletenegative();
display();
}
void enq()
{
int val;
if(r==MAX-1) {
printf("Queue full");
return;
}
else if(f == -1 && r == -1)
f=r=0;
else
r=r+1;
printf("enter the data to be enteredn");
scanf("%d",&val);
queue[r]=val;
}
void deq()
{
if(f==-1)
{
printf("underflow");
return;
}
if(f ==r)
f=r=-1;
else
f=f+1;
}
void display()
{
int i;
if(f ==-1)
printf("queue emptyn");
else
{
for(i=f; i<=r;i++)
printf("%dt",queue[i]);
}
}
void move(int i)
{
for( ;i<r;i++)
queue[i]=queue[i+1];
}
void deletenegative()
{
int i;
if(f ==-1)
printf("queue emptyn");
else
{
for(i=f; i<=r;)
{
if(queue[i] <0)
{
if(i==f)
{
deq();
i=i+1;
}
else
{
move(i);
r=r-1;
i=i-1;
}
}
else
i=i+1;
}
}
}
To see output... See my blog
http://enthusiaststudent.blogspot.in/2017/01/removing-negative-values-in-queues-c.html
Q) 10 bEnqueue, Dequeue and Display operations in Circular Queue using Arrays
#include <stdio.h>
#include <stdlib.h>
#define MAX 5
int cqueue[MAX], front=-1, rear=-1;
void deq();
void enq();
void display();
main()
{
int n,i;
printf("enter the number of elements");
scanf("%d",&n);
for(i=1;i<=n;i++)
enq();
display();
deq();
display();
}
void enq()
{
int val;
if((front == 0 && rear == MAX-1)||(front == rear+1))
{
printf("Queue full");
return;
}
if(front == -1 && rear == -1)
front = rear = 0;
else if(rear == MAX-1)
rear== 0;
else
rear=rear+1;
printf("enter the data to be enteredn");
scanf("%d",&val);
cqueue[rear]=val;
}
void deq()
{
if(front == -1 && rear == -1)
{
printf("queue is empty");
return;
}
printf("ndeleted element=%dn ",cqueue[front]);
if(front == rear)
front = rear = -1;
else if(front == MAX-1)
front = 0;
else
front = front+1;
}
void display()
{
int i;
if(front <= rear)
{
for(i=front;i<=rear;i++)
printf("%dt",cqueue[i]);
}
else
{
for(i=front;i<MAX;i++)
printf("%dt",cqueue[i]);
for(i=0;i<=rear;i++)
printf("%dt",cqueue[i]);
}
}
Q) Program to implement Ascending Priority queue
#include<stdio.h>
#include <stdlib.h>
struct node
{
int data,pri;
struct node *next;
};
struct node *head=NULL,*c,*p;
void create();
void display();
void deleteMin();
main()
{
int n,i;
printf("enter the number of elements");
scanf("%d",&n);
for(i=1;i<=n;i++)
create();
display();
deleteMin();
printf("n after deleting one element, the contents of apq are :n");
display();
}
void create()
{
int v,priority;
printf("enter value and priorityn");
scanf("%d%d",&v,&priority);
struct node *newnode = (struct node *)malloc(sizeof(struct node));
newnode->data =v;
newnode->pri=priority;
newnode->next = NULL;
if(head == NULL)
head = newnode;
else if( newnode->pri < head->pri)
{
newnode->next=head;
head=newnode;
}
else
{
c=head;
while(newnode->pri >= c->pri && c->next != NULL)
{
p=c;
c=c->next;
}
if(c->next == NULL && newnode->pri >= c->pri)
c->next=newnode;
else
{
p->next = newnode;
newnode->next=c;
}
}
}
void display()
{
if(head == NULL)
printf("list is empty");
else
{
c=head;
while(c != NULL)
{
printf("%d %d->",c->data,c->pri);
c=c->next;
}
}
}
void deleteMin()
{
/* delete the first node as the first node is minimum in ascending priority queue*/
c=head;
head=head->next;
free(c);
}
Session-13 A) What is a recursive solution to summing up a list of numbers? First you
should note that the sum of [2 13 4 25 66 71 82 91]) is equal to 2 + sum of [ 13 4 25 66 71
82 91]
#include <stdio.h>
int sum(int *a,int index,int n)
{
if(index == n)
return 0;
return(a[index]+sum(a,index+1,n));
}
main()
{
int n,i,a[100];
printf("enter size of arrayn");
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
printf("array sum =%d",sum(a,0,n));
}
Session-13b) . Write a recursive function called elfish? that, given a word, tells us if that
word is elfish or not.
#include <stdio.h>
int elfish(char *s,char *b, int i)
{
if(b[i]=='0')
return 1;
int k,flag=0;
for(k=0;s[k]!='0';k++)
{
if(s[k]==b[i])
{
flag=1;
break;
}
}
if(flag == 1)
return elfish(s,b,i+1);
else
return 0;
}
main()
{
char s[100],b[4]="elf";
int result;
printf("enter the stringn");
gets(s);
result=elfish(s,b,0);
if(result ==0)
printf("given string is not elfish");
else
printf("given string is elfish");
}
Session-14a)Write a recursive function to Find the total number of sequences of length
n (using H and T) such that no two Hs are next to each other.
#include <stdio.h>
int a[20];
int total_seq(int n)
{
if(n == 1)
return 2;
if(n ==2)
return 3;
if(a[n]!=-1 )
return a[n];
a[n]=total_seq(n-1)+total_seq(n-2);
return a[n];
}
main()
{
int n,i;
printf("enter n value");
scanf("%d",&n);
for(i=0;i<20;i++)
a[i]=-1;
printf("n Total number of sequences = %d",total_seq(n));
}
Session14 b) Given an array of positive numbers, find the maximum sum of a
subsequence with the constraint that no 2 numbers in the sequence should be adjacent
in the array.
#include<stdio.h>
int excl,incl;
/*Function to return max sum such that no two elements are adjacent */
int FindMaxSum(int *a, int index, int n)
{
int temp;
if(index == n)
return incl;
else
{
temp=incl;
if(incl<(excl+a[index]))
incl=excl+a[index];
excl = temp;
return FindMaxSum(a,index+1,n);
}
}
main()
{
int n, a[100],i;
printf(“enter the number of elementsn”);
scanf(“%d”, &n);
printf(“enter array elementsn”);
for(i=0;i<n;i++)
scanf(“%d”, &a[i]);
incl = a[0];
excl = 0;
printf("nMaximum sum of non- adjacent elements= %d n", FindMaxSum(a,1, n));
}
Session-15a)
Infix to postfix conversion
#include<stdio.h>
#include <process.h>
#define MAX 50
char stack[MAX];
int top=-1;
int getpriority(char);
void push(char);
char pop();
main()
{
char infix[50],temp,ch,postfix[50];
int i,j=0;
printf("enter the infix expressionn");
scanf("%s",&infix);
for(i=0; infix[i] != '0'; i++)
{
ch=infix[i];
if(ch == '(')
push(ch);
else if(ch == ')')
{
while(stack[top]!='(')
postfix[j++]=pop();
temp=pop();// popping the (
}
else if(isalnum(ch))
postfix[j++]=ch;
else
{
while(getpriority(stack[top])>=getpriority(ch))
postfix[j++]=pop();
push(ch);
}
}
while(top != -1)
postfix[j++]=pop();
postfix[j]='0';
puts(postfix);
}
int getpriority(char ch)
{
if( ch == '*'|| ch == '/'|| ch == '%')
return 2;
else if(ch == '+' || ch == '-')
return 1;
else
return 0;
}
void push(char item)
{
if(top == MAX-1)
{
printf("stack is full");
return;
}
top=top+1;
stack[top]=item;
}
char pop()
{
if(top == -1)
{
printf("stack empty");
return;
}
char temp;
temp=stack[top];
top=top-1;
return temp;
}
Evaluating PostFix expression
#include<stdio.h>
#include <process.h>
#include <string.h>
#define MAX 50
char stack[MAX];
int top=-1;
void push(float);
float pop();
void main()
{
char exp[MAX],temp,ch;
int i;
float op1,op2,value;
printf("Enter an expression : ");
gets(exp);
for(i=0;i<strlen(exp);i++)
{
ch=exp[i];
if(isdigit(ch))
push((float)ch-'0');
else
{
op2=pop();
op1=pop();
switch(ch)
{
case '+':
value=op1+op2;
break;
case '-':
value=op1-op2;
break;
case '*':
value=op1*op2;
break;
case '/':
value=op1/op2;
break;
case '%':
value=(int)op1%(int)op2;
break;
}
push(value);
}
}
printf("n Result=%f",pop());
}
void push(float item)
{
if(top == MAX-1)
{
printf("stack is full");
return;
}
top=top+1;
stack[top]=item;
}
float pop()
{
if(top == -1)
{
printf("stack empty");
return;
}
float temp;
temp=stack[top];
top=top-1;
return temp;
}

More Related Content

DOCX
DOCX
DAA Lab File C Programs
PDF
design and analysis of algorithm Lab files
DOCX
Os lab file c programs
DOC
Sorting programs
DOCX
ADA FILE
PDF
Cn os-lp lab manual k.roshan
DOCX
DataStructures notes
DAA Lab File C Programs
design and analysis of algorithm Lab files
Os lab file c programs
Sorting programs
ADA FILE
Cn os-lp lab manual k.roshan
DataStructures notes

What's hot (20)

DOCX
Data Structures Using C Practical File
DOC
Daa practicals
PDF
C Prog - Array
DOC
Ada file
PPSX
C programming array & shorting
PDF
Os lab 1st mid
DOCX
Lab manual operating system [cs 502 rgpv] (usefulsearch.org) (useful search)
TXT
Programs for Operating System
 
DOCX
DOC
Os 2 cycle
DOCX
Computer graphics programs in c++
PDF
Data Structures Practical File
PDF
C Prog. - Strings (Updated)
DOCX
PPT
Struct examples
PDF
programs
DOCX
Cg my own programs
DOCX
Wap in c to draw a line using DDA algorithm
PPT
computer graphics practicals
Data Structures Using C Practical File
Daa practicals
C Prog - Array
Ada file
C programming array & shorting
Os lab 1st mid
Lab manual operating system [cs 502 rgpv] (usefulsearch.org) (useful search)
Programs for Operating System
 
Os 2 cycle
Computer graphics programs in c++
Data Structures Practical File
C Prog. - Strings (Updated)
Struct examples
programs
Cg my own programs
Wap in c to draw a line using DDA algorithm
computer graphics practicals
Ad

Viewers also liked (12)

PDF
Points lines and planes Lesson 1
PDF
Mandela's Dream Collonium-Reconsiliation - Copy
PPTX
sistema nervioso autonomo
DOCX
WALI ULLAH HABIB ULLAH (1) (4)
PPTX
Broadcast journalism
PPTX
Noticia de google
PPTX
studying english abroad or studying at home
DOCX
Evaluation Question 3
PPTX
Teoria de cola_carmelaabreu
PPT
CIUDADANIA LOS DERECHOS HUMANOS
PDF
Analisi di mercato del settore dei ricambi per automobili in Russia - 2017
Points lines and planes Lesson 1
Mandela's Dream Collonium-Reconsiliation - Copy
sistema nervioso autonomo
WALI ULLAH HABIB ULLAH (1) (4)
Broadcast journalism
Noticia de google
studying english abroad or studying at home
Evaluation Question 3
Teoria de cola_carmelaabreu
CIUDADANIA LOS DERECHOS HUMANOS
Analisi di mercato del settore dei ricambi per automobili in Russia - 2017
Ad

Similar to Solutionsfor co2 C Programs for data structures (20)

PDF
Cs101 endsem 2014
PDF
Data Structure using C
DOCX
Artificial intelligence
PDF
Sujal Shripat Shirole ds practical book
PPTX
Mcs011 solved assignment by divya singh
PDF
codes.txt.pdf code presentation engineering
DOCX
Let us C (by yashvant Kanetkar) chapter 3 Solution
PDF
Classical programming interview questions
PDF
sodapdf-converted into ppt presentation(1).pdf
DOCX
PDF
09 a1ec01 c programming and data structures
PDF
25422733 c-programming-and-data-structures-lab-manual
DOCX
Write a program to check a given number is prime or not
PDF
VTU Data Structures Lab Manual
PPTX
data structure with algoritham vtu 2 module 1st sem 2023.pptx
PDF
Ch01 basic concepts_nosoluiton
PDF
C Programming Project
Cs101 endsem 2014
Data Structure using C
Artificial intelligence
Sujal Shripat Shirole ds practical book
Mcs011 solved assignment by divya singh
codes.txt.pdf code presentation engineering
Let us C (by yashvant Kanetkar) chapter 3 Solution
Classical programming interview questions
sodapdf-converted into ppt presentation(1).pdf
09 a1ec01 c programming and data structures
25422733 c-programming-and-data-structures-lab-manual
Write a program to check a given number is prime or not
VTU Data Structures Lab Manual
data structure with algoritham vtu 2 module 1st sem 2023.pptx
Ch01 basic concepts_nosoluiton
C Programming Project

More from Lakshmi Sarvani Videla (20)

DOCX
Data Science Using Python
DOCX
Programs on multithreading
PPT
Menu Driven programs in Java
DOCX
Recursion in C
DOCX
Simple questions on structures concept
PPTX
Errors incompetitiveprogramming
DOCX
Relational Operators in C
PPTX
Recursive functions in C
PPTX
Function Pointer in C
PPTX
DOCX
Java sessionnotes
DOCX
Singlelinked list
PPTX
Functions in python3
PPTX
DOC
Data Mining: Data Preprocessing
Data Science Using Python
Programs on multithreading
Menu Driven programs in Java
Recursion in C
Simple questions on structures concept
Errors incompetitiveprogramming
Relational Operators in C
Recursive functions in C
Function Pointer in C
Java sessionnotes
Singlelinked list
Functions in python3
Data Mining: Data Preprocessing

Recently uploaded (20)

PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Spectroscopy.pptx food analysis technology
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
Tartificialntelligence_presentation.pptx
PPT
Teaching material agriculture food technology
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PPTX
cloud_computing_Infrastucture_as_cloud_p
PPTX
1. Introduction to Computer Programming.pptx
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PPTX
Machine Learning_overview_presentation.pptx
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
TLE Review Electricity (Electricity).pptx
PDF
Encapsulation theory and applications.pdf
PDF
Approach and Philosophy of On baking technology
MIND Revenue Release Quarter 2 2025 Press Release
Encapsulation_ Review paper, used for researhc scholars
Spectroscopy.pptx food analysis technology
Network Security Unit 5.pdf for BCA BBA.
SOPHOS-XG Firewall Administrator PPT.pptx
Tartificialntelligence_presentation.pptx
Teaching material agriculture food technology
Reach Out and Touch Someone: Haptics and Empathic Computing
Heart disease approach using modified random forest and particle swarm optimi...
cloud_computing_Infrastucture_as_cloud_p
1. Introduction to Computer Programming.pptx
Univ-Connecticut-ChatGPT-Presentaion.pdf
Machine Learning_overview_presentation.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Assigned Numbers - 2025 - Bluetooth® Document
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
TLE Review Electricity (Electricity).pptx
Encapsulation theory and applications.pdf
Approach and Philosophy of On baking technology

Solutionsfor co2 C Programs for data structures

  • 1. Q) Session10 a)Execute program to remove negative values from list of values by using queues Program: #include <stdio.h> #include <stdlib.h> #define MAX 10 int queue[MAX],f=-1,r=-1; void enq(); void deq(); void display(); void deletenegative(); main() { int n,i; printf("enter the number of elements"); scanf("%d",&n); for(i=1;i<=n;i++) enq(); display(); printf("nAfter deleting negative valuesn"); deletenegative(); display(); } void enq() { int val; if(r==MAX-1) { printf("Queue full"); return; } else if(f == -1 && r == -1) f=r=0; else r=r+1; printf("enter the data to be enteredn"); scanf("%d",&val); queue[r]=val; } void deq() { if(f==-1) {
  • 2. printf("underflow"); return; } if(f ==r) f=r=-1; else f=f+1; } void display() { int i; if(f ==-1) printf("queue emptyn"); else { for(i=f; i<=r;i++) printf("%dt",queue[i]); } } void move(int i) { for( ;i<r;i++) queue[i]=queue[i+1]; } void deletenegative() { int i; if(f ==-1) printf("queue emptyn"); else { for(i=f; i<=r;) { if(queue[i] <0) { if(i==f) { deq(); i=i+1; } else {
  • 3. move(i); r=r-1; i=i-1; } } else i=i+1; } } } To see output... See my blog http://enthusiaststudent.blogspot.in/2017/01/removing-negative-values-in-queues-c.html Q) 10 bEnqueue, Dequeue and Display operations in Circular Queue using Arrays #include <stdio.h> #include <stdlib.h> #define MAX 5 int cqueue[MAX], front=-1, rear=-1; void deq(); void enq(); void display(); main() { int n,i; printf("enter the number of elements"); scanf("%d",&n); for(i=1;i<=n;i++) enq(); display();
  • 4. deq(); display(); } void enq() { int val; if((front == 0 && rear == MAX-1)||(front == rear+1)) { printf("Queue full"); return; } if(front == -1 && rear == -1) front = rear = 0; else if(rear == MAX-1) rear== 0; else rear=rear+1; printf("enter the data to be enteredn"); scanf("%d",&val); cqueue[rear]=val; } void deq() { if(front == -1 && rear == -1) { printf("queue is empty"); return;
  • 5. } printf("ndeleted element=%dn ",cqueue[front]); if(front == rear) front = rear = -1; else if(front == MAX-1) front = 0; else front = front+1; } void display() { int i; if(front <= rear) { for(i=front;i<=rear;i++) printf("%dt",cqueue[i]); } else { for(i=front;i<MAX;i++) printf("%dt",cqueue[i]); for(i=0;i<=rear;i++) printf("%dt",cqueue[i]); } } Q) Program to implement Ascending Priority queue
  • 6. #include<stdio.h> #include <stdlib.h> struct node { int data,pri; struct node *next; }; struct node *head=NULL,*c,*p; void create(); void display(); void deleteMin(); main() { int n,i; printf("enter the number of elements"); scanf("%d",&n); for(i=1;i<=n;i++) create(); display(); deleteMin(); printf("n after deleting one element, the contents of apq are :n"); display(); } void create() { int v,priority; printf("enter value and priorityn"); scanf("%d%d",&v,&priority); struct node *newnode = (struct node *)malloc(sizeof(struct node)); newnode->data =v; newnode->pri=priority; newnode->next = NULL; if(head == NULL) head = newnode; else if( newnode->pri < head->pri) { newnode->next=head; head=newnode; } else { c=head; while(newnode->pri >= c->pri && c->next != NULL) { p=c; c=c->next; } if(c->next == NULL && newnode->pri >= c->pri) c->next=newnode; else
  • 7. { p->next = newnode; newnode->next=c; } } } void display() { if(head == NULL) printf("list is empty"); else { c=head; while(c != NULL) { printf("%d %d->",c->data,c->pri); c=c->next; } } } void deleteMin() { /* delete the first node as the first node is minimum in ascending priority queue*/ c=head; head=head->next; free(c); } Session-13 A) What is a recursive solution to summing up a list of numbers? First you should note that the sum of [2 13 4 25 66 71 82 91]) is equal to 2 + sum of [ 13 4 25 66 71 82 91] #include <stdio.h> int sum(int *a,int index,int n) { if(index == n) return 0; return(a[index]+sum(a,index+1,n)); } main() { int n,i,a[100]; printf("enter size of arrayn"); scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&a[i]);
  • 8. printf("array sum =%d",sum(a,0,n)); } Session-13b) . Write a recursive function called elfish? that, given a word, tells us if that word is elfish or not. #include <stdio.h> int elfish(char *s,char *b, int i) { if(b[i]=='0') return 1; int k,flag=0; for(k=0;s[k]!='0';k++) { if(s[k]==b[i]) { flag=1; break; } } if(flag == 1) return elfish(s,b,i+1); else return 0; } main() { char s[100],b[4]="elf"; int result; printf("enter the stringn"); gets(s); result=elfish(s,b,0); if(result ==0) printf("given string is not elfish"); else printf("given string is elfish"); } Session-14a)Write a recursive function to Find the total number of sequences of length n (using H and T) such that no two Hs are next to each other. #include <stdio.h> int a[20]; int total_seq(int n) { if(n == 1) return 2; if(n ==2) return 3; if(a[n]!=-1 )
  • 9. return a[n]; a[n]=total_seq(n-1)+total_seq(n-2); return a[n]; } main() { int n,i; printf("enter n value"); scanf("%d",&n); for(i=0;i<20;i++) a[i]=-1; printf("n Total number of sequences = %d",total_seq(n)); } Session14 b) Given an array of positive numbers, find the maximum sum of a subsequence with the constraint that no 2 numbers in the sequence should be adjacent in the array. #include<stdio.h> int excl,incl; /*Function to return max sum such that no two elements are adjacent */ int FindMaxSum(int *a, int index, int n) { int temp; if(index == n) return incl; else { temp=incl; if(incl<(excl+a[index])) incl=excl+a[index]; excl = temp; return FindMaxSum(a,index+1,n); } } main() { int n, a[100],i; printf(“enter the number of elementsn”); scanf(“%d”, &n); printf(“enter array elementsn”); for(i=0;i<n;i++) scanf(“%d”, &a[i]); incl = a[0]; excl = 0; printf("nMaximum sum of non- adjacent elements= %d n", FindMaxSum(a,1, n)); }
  • 10. Session-15a) Infix to postfix conversion #include<stdio.h> #include <process.h> #define MAX 50 char stack[MAX]; int top=-1; int getpriority(char); void push(char); char pop(); main() { char infix[50],temp,ch,postfix[50]; int i,j=0; printf("enter the infix expressionn"); scanf("%s",&infix); for(i=0; infix[i] != '0'; i++) { ch=infix[i]; if(ch == '(') push(ch); else if(ch == ')') { while(stack[top]!='(') postfix[j++]=pop(); temp=pop();// popping the ( } else if(isalnum(ch)) postfix[j++]=ch; else { while(getpriority(stack[top])>=getpriority(ch)) postfix[j++]=pop(); push(ch); } } while(top != -1) postfix[j++]=pop(); postfix[j]='0'; puts(postfix); } int getpriority(char ch) { if( ch == '*'|| ch == '/'|| ch == '%') return 2; else if(ch == '+' || ch == '-') return 1; else return 0; }
  • 11. void push(char item) { if(top == MAX-1) { printf("stack is full"); return; } top=top+1; stack[top]=item; } char pop() { if(top == -1) { printf("stack empty"); return; } char temp; temp=stack[top]; top=top-1; return temp; } Evaluating PostFix expression #include<stdio.h> #include <process.h> #include <string.h> #define MAX 50 char stack[MAX]; int top=-1; void push(float); float pop(); void main() { char exp[MAX],temp,ch; int i; float op1,op2,value; printf("Enter an expression : "); gets(exp); for(i=0;i<strlen(exp);i++) { ch=exp[i]; if(isdigit(ch)) push((float)ch-'0'); else {
  • 12. op2=pop(); op1=pop(); switch(ch) { case '+': value=op1+op2; break; case '-': value=op1-op2; break; case '*': value=op1*op2; break; case '/': value=op1/op2; break; case '%': value=(int)op1%(int)op2; break; } push(value); } } printf("n Result=%f",pop()); } void push(float item) { if(top == MAX-1) { printf("stack is full"); return; } top=top+1; stack[top]=item; } float pop() { if(top == -1) { printf("stack empty"); return; }