使用数组实现10进制向任何进制数制的转换。
算法思想:
使用数组模拟栈,将n%m加到数组中,然后将数组的元素倒叙输出即可。
#include<stdio.h> int stack[100]; int n,m;//n表示要转换的数,m表示进制 //初始化数组 int Init(int stack[]){ for(int i=0;i<100;i++){ stack[i]=-1; } return 1; } //转换 void Conversion(int n,int m){ int i=0; int count=0; while(n){ stack[i++]=n%m; n=n/m; count+=1; } //printf("%d\n",count); for(int j=count-1;j>=0;j--){ printf("%d",stack[j]); } } int main(){ printf("请输入要转换的数n和进制数m:"); while(scanf("%d%d",&n,&m)!=EOF){ Conversion(n,m); } }
原文地址:https://www.jb51.cc/datastructure/382498.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。