Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 77 additions & 0 deletions Data-Structure-And-Algorithm-C-严蔚敏/ch3-stackqueue/Queue.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int index=0;
int n=5;
int q[100];
void enqueue(int k)
{
if(index<n)
{
q[index]=k;
index++;
}
else
{
printf("Queue is FULL!!\n");
}
}
void dequeue()
{
if(index==0)
{
printf("Queue is EMPTY!!\n");
}
else
{
int i=1;
printf("The element removed is:%d\n",q[0]);
while(i<index)
{
q[i-1]=q[i];
i++;
}
index--;
}
}
void print()
{
if(index==0)
{
printf("Queue is EMPTY!!\n");
}
else
{
int i=0;
printf("The elements are:\n");
while(i<index)
{
printf("%d\n",q[i]);
i++;
}
}
}
void main()
{
int a,k;
while(1)
{
printf("Select your option:\n");
printf("1.Enqueue\n2.Dequeue\n3.Print elements\n4.Exit\n");
scanf("%d",&a);
switch(a)
{
case 1: printf("Enter the element to be inserted:\n");
scanf("%d",&k);
enqueue(k);
break;
case 2: dequeue();
break;
case 3: print();
break;
case 4: exit(0);
break;
}
}
getch();
}
71 changes: 71 additions & 0 deletions Data-Structure-And-Algorithm-C-严蔚敏/ch3-stackqueue/Stack.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int stk[100];
int index=0;
int n=5;
void push(int k)
{
if(index<n)
{
stk[index]=k;
index++;
}
else
{
printf("Stack is FULL!!\n");
}
}
void pop()
{
if(index!=0)
{
printf("Element popped out is:%d\n",stk[index-1]);
index--;
}
else
{
printf("Stack is EMPTY!!\n");
}

}
void print()
{
if(index==0)
{
printf("Stack is EMPTY!!\n");
}
else
{
int i=0;
printf("The elements in STACK are:\n");
while(i<index)
{
printf("%d\n",stk[i]);
i++;
}
}
}
int main()
{
int a,k;
while(1)
{
printf("Select your option:\n");
printf("1.Push\n2.Pop\n3.Print\n4.Exit\n");
scanf("%d",&a);
switch(a)
{
case 1: printf("Enter the element to be pushed into the stack:");
scanf("%d",&k);
push(k);
break;
case 2: pop();
break;
case 3: print();
break;
case 4: exit(0);
}
}
getch();
}