weixin_43416813 2018-10-15 00:59
浏览 422

请教大佬 输入d 和 n d代表十进制 n代表进制 输出n进制到2进制所有数

请教各位大佬,本人萌新一枚,有问题请教。如果我输入一个数n(n是十进制数),在输入一个数d(d代表进制),输出d进制到二进制所有数。请问怎么做?
比如我输入121 在输入8 就输出121的 8 7 6 5 4 3 2 进制数。我想用for loop for(d;d>=2;d--)但好像不行,请问怎么做? 谢谢
我的代码如下,(参考了下某位版主大佬的代码)
void decimalToAny(int n,int d)
{
if(n==0)
{
return ;
}
else if(n>0 && d>=2)
{
decimalToAny(n/d,d);
if(d>=10)
{ // if d is >10
if(n%d>=10)
{
printf("%c",(char)((n%d-10)+'A'));
}
else
{ //if remainder is smaller than 10, print out
printf("%d",n%d);
}
}

        else 
        { //if d is smaller than 10
            printf("%d",n%d);
        }

} 
else if(n<0 && d>=2) 
{
    printf("Please enter a positive number");
} 
else if(n>0 && d<2) 
{
    printf("Please enter at least binary system");
} 
else 
{
    printf("Please enter positive number and binary system");
}

}

int main()
{
int n,d;
char again='y';
while(again=='y'||again=='Y')
{

    printf("enter number");
    scanf("%d",&n);
    printf("base");
    scanf("%d",&d);
    if(n==0) 
    {
        printf("transfer finished:0\n");
        continue;
    }
    decimalToAny(n,d);
    printf("\n");
    printf("--------do you want to continue[y/n]?:");
    scanf("%s",&again);
}
return 0;

}

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 使用C#,asp.net读取Excel文件并保存到Oracle数据库
    • ¥15 C# datagridview 单元格显示进度及值
    • ¥15 thinkphp6配合social login单点登录问题
    • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
    • ¥15 如何在scanpy上做差异基因和通路富集?
    • ¥20 关于#硬件工程#的问题,请各位专家解答!
    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配