数据结构实验之栈一:进制转换(栈)
来源:互联网 发布:Java web 项目开发文档 编辑:程序博客网 时间:2024/04/24 03:39
Think:
模拟栈, 每次都将 余数 存入栈中, 然后 出栈即可
Problem Description
输入一个十进制非负整数,将其转换成对应的 R (2 <= R <= 9) 进制数,并输出。
Input
第一行输入需要转换的十进制非负整数;
第二行输入 R。
Output
输出转换所得的 R 进制数。
Example Input
1279
8
Example Output
2377
#include<bits/stdc++.h>using namespace std;#define STACK_INIT_SIZE 1050#define STACKINCREMENT 50#define ERROR 0//#define OK 1//#define OVERFLOW -1typedef int Elemtype;typedef struct{ Elemtype *base; Elemtype *top; int stacksize;} sqstack;int a[10086];int b[10086];void Initstack(sqstack &L);void Push(sqstack &L, Elemtype key);int Pop(sqstack &L, Elemtype key);bool Ifempty(sqstack &L);int main(){ int N , R; cin >> N >> R; sqstack L; Initstack(L); if (N == 0) cout << "0"; while(N) { int key = N % R; N/=R; Push(L, key); } while(!Ifempty(L)) { int key = Pop(L, key); cout << key; } cout << endl;}void Initstack(sqstack &L){ L.base = (Elemtype *)malloc(STACK_INIT_SIZE * sizeof(Elemtype)); if (!L.base) exit(-1); else L.top = L.base; L.stacksize = STACK_INIT_SIZE;}void Push(sqstack &L, Elemtype key){ if(L.top - L.base >= L.stacksize) { L.base = (Elemtype *)realloc(L.base, (L.stacksize + STACKINCREMENT)*sizeof(Elemtype)); if(!L.base) { exit(-1); } L.top = L.base + L.stacksize; L.stacksize += STACKINCREMENT; } *L.top ++ = key;}int Pop(sqstack &L, Elemtype key){ if (L.top == L.base) { return ERROR; } key = *(-- L.top); return key;}bool Ifempty(sqstack &L){ if (L.base == L.top) return true; else return false;}
阅读全文
0 0
- 数据结构实验之栈一:进制转换 简单栈
- 数据结构实验之栈一:进制转换(栈)
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- SDUT 2131 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换 SDUT 2131
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- 数据结构实验之栈一:进制转换
- spring boot(13)-logback和access日志
- vue的爬坑之路,这里面有好多
- Vue
- jQuery实现图片轮播(淡入淡出效果)
- Hibernate——持久化对象状态
- 数据结构实验之栈一:进制转换(栈)
- SQLSERVER2008 (T-SQL汇总一)
- HRBUST
- Android----------实现简单的购物车加减器
- hdu2075 A|B?(C语言)
- 1.4 枚举(穷举)算法
- Android学习笔记——Android Studio创建Activity
- linux下lua安装
- qt-mysql连接不上数据库缺少驱动问题解决