c语言程序 自定义函数实现:二进制转换为十进制。 20
展开全部
说下思路吧,二进制位数不确定,用链表实现,将输入的数据存入链表中。
然后遍历链表,循环,即可转化为十进制,不难,自己实现下
然后遍历链表,循环,即可转化为十进制,不难,自己实现下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
long bin_to_dec(bin[],length,sign)
///bin[]代表存储二进制的数组序列,数组的每一位用0,1表示二进制
///length代表二进制长度,即bin[]长度,bin[0]为最低位,bin[length]为最高位
///sign若为true代表有符号数,负责无符号数
///返回数据类型为long型数据
{
long temp=0;
long weigth=1;
for(int i=length;i>0;i--)
{
weight=weight*2;
if(sign) //有符号数
if(i<length-1)
temp+=weight*bin[i]/2;
else
temp=bin[length-1]?temp:-1*temp;
else //无符号数
temp+=weigth*bin[i]/2;
return temp;
}
}
///bin[]代表存储二进制的数组序列,数组的每一位用0,1表示二进制
///length代表二进制长度,即bin[]长度,bin[0]为最低位,bin[length]为最高位
///sign若为true代表有符号数,负责无符号数
///返回数据类型为long型数据
{
long temp=0;
long weigth=1;
for(int i=length;i>0;i--)
{
weight=weight*2;
if(sign) //有符号数
if(i<length-1)
temp+=weight*bin[i]/2;
else
temp=bin[length-1]?temp:-1*temp;
else //无符号数
temp+=weigth*bin[i]/2;
return temp;
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询