C 언어 구현 순서 스 택 초기 화 & 스 택 & 스 택 나 가기 & 스 택 상단 요소 읽 기

2882 단어 데이터 구조
/*            */ 

#include
#include 

#define Stack_Size 50             //        50 
#define OK 1
#define ERROR 0

typedef struct                
{
	int elem[Stack_Size];          //              
	int top;	                   //           ,top  -1      
}SeqStack;

/**********************        *********************/
int initStack(SeqStack *S);     	//       
void push(SeqStack *S,int n);  		//        
void pop(SeqStack *S);				//        
int getTop(SeqStack *S,int *s);     //       
 
int main()
{
	SeqStack *S;
	int choice;
	while(true)
	{
        printf("*****************Please enter your choice*****************

"); printf(" choice 1:Stack initialization
"); printf(" choice 2:Into the stack
"); printf(" choice 3:Out of the stack
"); printf(" choice 4:Read the stack elements
"); printf(" choice 0:exit

"); scanf("%d",&choice); switch(choice) { case 1: (initStack(S)==1)?printf("initStck success.
"):printf("initStack ERROR
"); break; case 2: int n; printf("Please enter the number into the stack elements:"); scanf("%d",&n); push(S,n); break; case 3: pop(S); break; case 4: int* s; (getTop(S,s)==1)? printf(" :%d.
",*s):printf("An empty stack error!!!!
"); // break; case 0: exit(0); break; default: printf("ERROR!!
"); exit(0); break; } } return 0; } /********************** *********************/ int initStack(SeqStack *S) // { if(S!=NULL) { S->top=-1; // return OK; } else return ERROR; // } void push(SeqStack *S,int n) // , { int n1,n2; if(((S->top)+n)<=Stack_Size-1) // { printf("Please enter into the stack elements in turn:
"); for(n1=0;n1top++; // S->elem[S->top]=n2; } printf("%d
",n); } else { // printf("ERROR There is insufficient space on the stack.
"); } } void pop(SeqStack *S) { // int a; if(S->top==-1) { // , printf("An empty stack error!!!!
"); } else { a=S->elem[S->top]; S->top--; printf(" %d .
",a); // } } int getTop(SeqStack *S,int *s) // { if(S->top==-1) { // , return ERROR; } else { *s=S->elem[S->top]; // return OK; } }

좋은 웹페이지 즐겨찾기