Blooming Together_ Growing a Community Garden Worksheet.docx
week-15x
1. /* Write C programs that implement stack (its operations) using i) Arrays */
#include<stdio.h>
#include<conio.h>
int st_arr[20];
int t=-1;
void push_ele(int ele);
int pop_ele();
void display_ele();
void main()
{
char choice,num1=0,num2=0;
while(1)
{
clrscr();
printf("======================================");
printf("ntt MENU ");
printf("n======================================");
printf("n[1] Using Push Function");
printf("n[2] Using Pop Function");
printf("n[3] Elements present in Stack");
2. printf("n[4] Exitn");
printf("ntEnter your choice: ");
fflush(stdin);
scanf("%c",&choice);
switch(choice-'0')
{
case 1:
{
printf("ntElement to be pushed: ");
scanf("%d",&num1);
push_ele(num1);
break;
}
case 2:
{
num2=pop_ele(1);
printf("ntElement to be popped: %dnt",num2);
getch();
break;
}
3. case 3:
{
display_ele();
getch();
break;
}
case 4:
exit(1);
break;
default:
printf("nYour choice is invalid.n");
break;
}
}
}
/*Implementing the push() function. */
void push_ele(int ele)
{
if(t==99)
{
printf("STACK is Full.n");
4. getch();
exit(1);
}
st_arr[++t]=ele;
}
/*Implementing the pop() function. */
int pop_ele()
{
int ele1;
if(t==-1)
{
printf("ntSTACK is Empty.n");
getch();
exit(1);
}
return(st_arr[t--]);
}
/*Implementing display() function. */
void display_ele()
{
int k;
printf("ntElements present in the stack are:nt");
5. for(k=0;k<=t;k++)
printf("%dt",st_arr[k]);
}
/* Write C programs that implement stack (its operations) using ii) Pointers */
#include<stdio.h>
#include<conio.h>
struct st_point
{
int ele;
struct st_point *l;
}
*t;
int i;
void push_ele(int j);
int pop_ele();
void display_ele();
void main()
{
6. char choice,num1=0,num2=0;
int i;
while(1)
{
clrscr();
printf("======================================");
printf("ntt MENU ");
printf("n======================================");
printf("n[1] Using Push Function");
printf("n[2] Using Pop Function");
printf("n[3] Elements present in Stack");
printf("n[4] Exitn");
printf("ntEnter your choice: ");
fflush(stdin);
scanf("%c",&choice);
switch(choice-'0')
{
case 1:
{
printf("ntElement to be pushed:");
scanf("%d",&num1);
push_ele(num1);
break;
7. }
case 2:
{
num2=pop_ele(1);
printf("ntElement to be popped: %dnt",num2);
getch();
break;
}
case 3:
{
printf("ntElements present in the stack are:nt");
display_ele();
getch();
break;
}
case 4:
exit(1);
break;
default:
printf("nYour choice is invalid.n");
8. break;
}
}
}
/*Inserting the elements using push function*/
void push_ele(int j)
{
struct st_point *m;
m=(struct st_point*)malloc(sizeof(struct st_point));
m->ele=j;
m->l=t;
t=m;
return;
}
/*Removing the elements using pop function*/
int pop_ele()
{
if(t==NULL)
{
printf("nSTACK is Empty.");
getch();
exit(1);
9. }
else
{
int i=t->ele;
t=t->l;
return (i);
}
return 0;
}
/*Displaying the elements */
void display_ele()
{
struct st_point *pointer=NULL;
pointer=t;
while(pointer!=NULL)
{
printf("%dt",pointer->ele);
pointer=pointer->l;
}
}