用链栈实现任意进制的转化
来源:互联网 发布:centos 编译php7 编辑:程序博客网 时间:2024/05/19 21:01
任意进制的转化基本思路是以十进制为中转,先将其他进制转为十进制,再由十进制转目的进制
/* 栈的结构类型 */typedef char ElemType;typedef struct Stack{ ElemType elem[N]; int top;}Stack;//初始化栈void InitStack(Stack *S){ S->top=-1;}//出栈void Pop(Stack *S){ if(S->top==-1){ printf("stack is null"); }else{ S->top--; }}//入栈void Push(Stack *S,ElemType e){ S->top++; S->elem[S->top]=e;}//打印栈void showStack(Stack *S){ int i; if(S->top==-1){ printf("stack is null"); }else{ for(i=S->top;i>=0;i--){ printf("%c",S->elem[i]); } } printf("\n");}//十进制转其他进制void statechange(Stack *S,int n,int i){ int a=n,b; char c; do{ b=a%i; if(b>9){ c=b-10+'A'; }else{ c=b+'0'; } Push(S,c); a=a/i; }while(a>0);}//其他进制转十进制int changestate(Stack *L,int i){ int k,n=0,l=L->top,g; for(k=0;k<=l;k++){ g=L->elem[k]-'0'; if(g>i){ printf("输入的进制错误"); return -1; }else{ n+=pow(i,l-k)*(g); } } return n;}
0 0
- 用链栈实现任意进制的转化
- 任意进制转化
- JAVA实现10进制的数转化为任意n进制的数
- 利用递归调用实现十进制转化成任意进制
- C实现任意进制数的转化
- 用堆栈实现任意制度的转化
- 十进制转化为任意进制的数
- 整数转化为任意n进制的字符串
- UESTC 1012 Ladygod 任意进制的转化
- 任意进制转化为十进制
- 任意进制转化 c(c++)
- 十进制数转化为任意进制
- 利用递归实现10进制转化成任意进制
- 任意进制转换的递归实现
- 将十进制转化为任意进制的程序(今天写的)
- 求一个数中任意的某一段,(可以转化为其他进制)
- ACM: 任意进制的小数转化 高精度题…
- 将一个任意输入的10进制数转化为16进制形式输出
- 9Patch png format
- 深入理解C++的动态绑定和静态绑定
- mysql ON DUPLICATE KEY UPDATE
- 冒泡、选择、插入、归并、快速、堆排序效率测试
- 算法入门经典第二版第10章uva1635
- 用链栈实现任意进制的转化
- 原生js学习笔记
- RFC相关设置及使用
- 类加载器
- DELPHI Webbrowser 响应回车键(EWB响应正常,无需额外代码)
- 关于 Java 中 finally 语句块的深度辨析
- final关键字
- Okhttp作为现在最火的一个网络请求框架
- Servlet3.0特性-模块化