C언어를 이용한 간단한 스택 구현
스택사이즈 : 100
#include <stdio.h>
#define stackSize 100
int stack[stackSize];
int top = -1;
int isFull(){
if(top >= stackSize-1){
printf("Stack is Full\n");
return 1;
}
else return 0;
}
int isZero(){
if(top==-1){
printf("Stack is empty\n");
return 1;
}else return 0;
}
void printStack(){
int i;
for(i=0; i<=top; i++){
printf("%d ", stack[i]);
}
printf("\n");
}
int pop(){
if(!isZero()){
return stack[top--];
}
}
void push(int item){
if(!isFull()){
stack[++top] = item;
}
printStack();
}
int main(void){
int data, an;
char re;
printf("Push data : ");
scanf("%d", &data);
push(data);
int i=0;
while(1){
printf("push : 1 or pop : 2 (exit : 0)\n");
scanf("%d", &an);
if(an == 1){
printf("Push data : ");
scanf("%d", &data);
push(data);
}else if(an == 2){
pop();
printStack();
}else{
return 0;
}
}
return 0;
}
'Computer Science > Algorithm' 카테고리의 다른 글
[정렬] 버블정렬(Bubble Sort) C언어 (0) | 2021.05.16 |
---|