C语言创建栈.docx

上传人:牧羊曲112 文档编号:3155259 上传时间:2023-03-11 格式:DOCX 页数:3 大小:36.85KB
返回 下载 相关 举报
C语言创建栈.docx_第1页
第1页 / 共3页
C语言创建栈.docx_第2页
第2页 / 共3页
C语言创建栈.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《C语言创建栈.docx》由会员分享,可在线阅读,更多相关《C语言创建栈.docx(3页珍藏版)》请在三一办公上搜索。

1、C语言创建栈堆栈题:创建一个栈+入栈+出栈 (1)由键盘一个一个的输入正整数,建立相应的堆栈,输入-1时,堆栈结束; (2)在中创建的堆栈中添加一个元素; (3)在中创建的堆栈中删除一个元素;(要求在显示器可见); #include #include #define STACK_INIT_SIZE 100 #define STACKINCREMENT 10 int e; #define OK 1 #define OVERFLOW 0 #define ERROR 0 typedef int SElemType; typedef struct SElemType *base; SElemType

2、*top; int stacksize; SqStack; void CreateStack(SqStack *S) int a; S-base=(SElemType *)malloc(STACK_INIT_SIZE*sizeof(SElemType); if(!S-base) printf(创建失败) ; else S-top=S-base; S-stacksize=STACK_INIT_SIZE; scanf(%d,&a); while(a!=-1&(S-top)-(S-base)stacksize) void StackPrintf(SqStack *S) SElemType *p; *

3、(S-top)=a; S-top+; scanf(%d,&a); p=S-base; while(p!=S-top) printf( %d,*p); p+; int Push(SqStack *S,SElemType e) if(S-top-S-base=S-stacksize) S-base=(SElemType *)realloc(S-base,(S-stacksize+STACKINCREMENT)*sizeof(SElemType); void Pop(SqStack *S) if(S-top=S-base) printf(ERROR); else *(S-top)=e; S-top+

4、; else if(!S-base) return OVERFLOW; S-stacksize+=STACKINCREMENT; return OK; else *(S-top)=e; S-top+; return OK; printf(n删除的元素是:%d,*(S-top-1); void main S-top-; SqStack stack,*S; S=&stack; printf(n输入的元素依次为:); CreateStack(S); StackPrintf(S); printf(n请输入要添加的元素:); scanf(%d,&e); if(Push(S,e) StackPrintf(S); Pop(S); printf(n删除后的结果是:); StackPrintf(S);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备2025010119号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000987号