007.栈应用数制转换C实例
来源:互联网 发布:北京seo网站排名优化 编辑:程序博客网 时间:2024/06/04 17:47
输入十进制数转换为八进制形式。
#include <stdio.h>#include <stdlib.h>#define OK 1#define OVERFLOW -2#define ERROR -1#define TRUE 1#define FALSE 0#define STACK_INIT_SIZE 100#define STACKINCREMENT 10typedef int Status;typedef struct{ int* base; int* top; int stacksize;}SqStack;Status InitStack(SqStack* S){ S->base=(int*)malloc(STACK_INIT_SIZE*sizeof(int)); if(!S->base) exit(OVERFLOW); S->top=S->base; S->stacksize=STACK_INIT_SIZE; return OK;}Status Push(SqStack* S,int e){ if(S->top-S->base >= S->stacksize) { S->base=(int*)realloc(S->base,(S->stacksize+STACKINCREMENT)*sizeof(int)); if(!S->base) exit(OVERFLOW); S->top=S->base+S->stacksize; S->stacksize+=STACKINCREMENT; } *S->top++ = e; return OK;}Status Pop(SqStack* S,int* e){ if(S->top==S->base) return ERROR; *e=*(--S->top); return OK;}Status StackEmpty(SqStack S){ if(S.base==S.top) return TRUE; else return FALSE;}Status conversion(){ int N; SqStack S; int e; InitStack(&S); printf("input a number:\nDecimal:"); scanf("%d",&N); while(N) { Push(&S,N%8); N/=8; } printf("Octal:"); while(!StackEmpty(S)) { Pop(&S,&e); printf("%d",e); } return OK;}int main(){ conversion(); return 0;}
0 0
- 007.栈应用数制转换C实例
- 【数据结构】栈的应用--数制转换(c++)
- 栈的应用:数制转换
- 栈应用之一数制转换
- 栈的应用----数制转换
- 栈的应用数制转换
- 数制转换(栈的应用)
- 数制转换,将10进制转换为8进制 C语言 栈的应用
- VC栈的应用--数制转换
- 栈应用--数制转换
- 栈的应用之数制转换
- 栈的应用——数制转换
- 栈的应用之数制转换
- 栈的应用—数制转换
- 栈的基本应用-数制转换-数据结构
- 栈的应用举例----数制转换
- 栈的应用之数制转换
- 栈在数制转换上的应用
- Caffe学习系列(2):数据层及参数
- css知多少(10)——display
- 移植uCOS-II到Cortex-M3平台
- 获取当前月的第一天和最后一天;获取当前周的第一天和最后一天
- java企业网站源码,模版,有前后台,springmvcSSM,生成静态化
- 007.栈应用数制转换C实例
- WhoUseMe--枚举句柄查找文件占用
- SQL Server 存储过程详解
- java 构造函数
- 传说中的贝叶斯统计到底有什么来头?
- Java 基础整理(一)
- HUT藍橋杯賽前熱身、
- Nginx+Tomcat搭建高性能负载均衡集群(Windows)
- Hibernate的主配置文件hibernate.cfg.xml