c编程语言中的基本转换

时间:2016-11-11 19:42:08

标签: c binary decimal base

有人能指出这段代码有什么问题吗?我试图编写一个简单的(不使用数组和类似的东西)程序,将基数为10的数字转换为任何其他基数。我是初学者,我刚刚开始使用C语言进行编码。

PS:正如你所看到的那样,我还没有写出任何会反转结果的东西,而且我没有收到编译器的任何输出。它停止了工作。

main()
{
    int a,b,c;
    printf("Please enter a number in base 10: ");
    scanf("%d",&a);
    printf("\nPlease enter the base that you want the number to be converted to: ");
    scanf("%d",&b);
    do
    {
        c=a%b;
        printf("%d",c);
        a/=b;
    }while(c!=0);
}

2 个答案:

答案 0 :(得分:2)

将while循环更改为!= 0.您希望循环,直到将输入数减少为零。当第一个数字为0时,您的代码将终止。

答案 1 :(得分:1)

将任何基础转换为基础10:

Range("D1").Select
Selection.Replace What:=".", Replacement:="/", LookAt:=xlPart, _
    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False