python任意进制转换代码_任意进制转换(示例代码)

1,十进制转二进制

#includeintmain()

{int i=0,n,a[32];//a[32]表示数组a里面有32个元素 printf("请输入一个十进制整数:");

scanf("%d",&n);while(n>0)

{

a[i]=n%2;

i=i+1;

n=n/2;

}

printf("十进制整数转换为二进制数是:");for(i--;i>=0;i--)//i自减直到i<0 printf("%d",a[i]);

printf("");return 0;

}

2,任意进制转为十进制

#include#include#include#include

int y(char a[32],int n)//构造函数y

{inti,j;long int c=0;

j=strlen(a);//测试字符串的总长度

for(i=j-1,j=0;i>=0;i--,j++)

c=c+(long)((a[i])*pow(n,j));//pow(n,j)为n^j

returnc;

}intmain()

{char a[32];intb;long intc;char *p=a;//声明一个指针变量并把a里面的地址赋值给指针p,让p和a指向同一个变量

printf("输入数据和a进制:");

scanf("%s",p);//%s为字符串占位符

scanf("%d",&b);

c=y(p,b);

printf("输出十进制的数为:%ld",c);//%ld输出long整数

system("pause");return 0;

}

对这个代码进行运行时会出现1>c:userslenovodocumentsvisual studio 2012projectsconsoleapplication7consoleapplication7源.cpp(11): error C2668: “pow”: 对重载函数的调用不明确1>          c:program filesmicrosoft visual studio 11.0vcincludemath.h(582): 可能是“long double pow(long double,int)”1>          c:program filesmicrosoft visual studio 11.0vcincludemath.h(534): 或       “float pow(float,int)”1>          c:program filesmicrosoft visual studio 11.0vcincludemath.h(496): 或       “double pow(double,int)”1>          尝试匹配参数列表“(int, int)”时

为什么上机时用电脑运行会是这个结果,但在手机上运行却能成功????

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值