- 积分
- 1284
- 注册时间
- 2014-12-29
- 最后登录
- 2016-11-14
- 在线时间
- 17 小时
- 威望
- 11
- 贡献
- 0
- 金币
- 359
- 钢镚
- 20
- 交易凭证
- 0
- 分享
- 0
- 精华
- 0
- 帖子
- 19
- 主题
- 18
TA的每日心情 | 慵懒 2015-4-16 10:25 |
|---|
签到天数: 8 天 [LV.3]偶尔看看II
版主
   
- 威望
- 11
- 贡献
- 0
- 金币
- 359
- 钢镚
- 20
|
将十进制转换为其他进制整数的计算过程是:将十进制除以相应制数的整数,取其余数作为相应数制的最低位,再用商除以相应数制的基础,取余数作为相应数制的次低位。。。这样不断的重复,即可完成转换。
递归算法如下
- [cpp] view plaincopy
- // 编程算法之递归(数制转换).cpp : 定义控制台应用程序的入口点。
- //
-
- #include "stdafx.h"
- #include<string.h>
- void convto(char *s ,int n,int b)
- {
- char bit[17] = {"0123456789ABCDEF"};
-
- int len;
- if(n==0)
- {
-
- strcpy_s(s,1,"");
- return;
- }
- convto(s,n/b,b);
- len = strlen(s);
- s[len] = bit[n%b];
- s[len+1] = '\0';
-
-
- }
- int _tmain(int argc, _TCHAR* argv[])
- {
- char s [80];
- int i,base,old;
- printf("请输入十进制数:");
- scanf_s("%d",&old);
- printf("请输入转换的进制:");
- scanf_s("%d",&base);
- convto(s,old,base);
- printf("%s\n",s);
-
- return 0;
- }
复制代码 blog.csdn.net/yaoyuan0701/article/details/45119491
|
|