这道进制转换的题怎么做??

swiminthesea 2003-11-28 11:09:42
题目如下

利用命令行实现,输入一个10进制数,可将其转换成其他进制的数
例:CHANGE 10 3(回车)
101
CHANGE 10 16(回车)
A

请大家帮帮忙,用C语言做
...全文
60 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
swiminthesea 2003-11-29
  • 打赏
  • 举报
回复
那..............到底应该怎么做啊??来帮帮忙
swiminthesea 2003-11-29
  • 打赏
  • 举报
回复
那么只能在10进制以内才能做???
antijpn 2003-11-29
  • 打赏
  • 举报
回复
这个东西不可能这样做的,因为在超过10以后,其他的数字应该是未定义的,所以不可能出现A这样的东西,一般大进制的数字直接用10进制的数据来表示
譬如31转化成16进制最后变成1 15

假设命令是change m n
那么创建两个变量,一个用来保存除法运算的结果,一个保存取模运算的结果,然后把取模运算逆向输出就行了
zhouqingyuan 2003-11-29
  • 打赏
  • 举报
回复
这个真的要明天做了,回去睡觉去了
ppgg1979 2003-11-29
  • 打赏
  • 举报
回复
其他的数字应该是未定义的? 自己定义就行了,比如17进制,可以是0-9A-G,说得奇怪的很
wadefelix 2003-11-29
  • 打赏
  • 举报
回复
肯定不是
junnyfeng 2003-11-29
  • 打赏
  • 举报
回复
谁叫你输 10 3 呢, 输 10 2
哪里有三进制?
ftp123 2003-11-29
  • 打赏
  • 举报
回复
好了,我可以给你建议,不过写代码实在是太麻烦,所以我给你一个算法。
我现在大概也忘记了,2个命令行参数的具体意义了,不知道是一个接受输入数据还是2个都接受。
反正不论是怎样都不要紧,所以此事在这里就不再提了。
我记得好象是后面的一个接受数据,所以呢,需要把数据取出来,然后用2个变量保存(num,degree),接着就可以调用自己的变量转换函数,实参就是前面的那2个,不要说你不会写转换函数啊,那样的话,我就真的什么都帮不了你啊。
languagec 2003-11-29
  • 打赏
  • 举报
回复
来学习
swiminthesea 2003-11-29
  • 打赏
  • 举报
回复
arfi,我该怎么运行啊?我用的是TC3.0

我RUN了之后在DOS SHELL里输入10 3 是错误的
arfi 2003-11-29
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <stdlib.h>

void main(int argc, char *argv[])
{
int num;
char str[30];

if(argc != 3)
{
printf("USAGE: %s num(dec) degree\n", argv[0]);
exit(EXIT_FAILURE);
}

num = atoi(argv[1]);
itoa(num, str, atoi(argv[2]));
printf("The result is: %s\n", str);
}

69,369

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧