对于十进制数,数字符号使用阿拉伯数字0-9,对于超过十的进制,除了用0-9外, 还依次用字母A、B、C、D……表示数10、11、12、13……,下面的程序将一个以字符串 形式的K进制整数转换成十进制整数形式输出

/*对于十进制数,数字符号使用阿拉伯数字0-9,对于超过十的进制,除了用0-9外,
还依次用字母A、B、C、D……表示数10、11、12、13……,下面的程序将一个以字符串
形式的K进制整数转换成十进制整数形式输出 */
#include <stdio.h>
#define K 16
int main()
{
    char s[10];
    int i,m=0;
    printf("请输入一个%d进制数:",K);
    scanf("%s",s);
    for(i=0;s[i];i++)
        if(s[i]>='0' && s[i]<='9')
            m=m*K+s[i]-'0';
    else 
        if(s[i]>='A' && s[i]<'A'+K-10)
            m=m*K+s[i]-'A'+10;
        else m=m*K+s[i]-'a'+10;
    printf("%d",m);
    return 0;
}

运行结果:

原文地址:https://www.cnblogs.com/yanglike111/p/13186051.html