C语言中如何用循环实现二进制数转换成十进制数

一个整型数组 请帮我补充程序: #include <iostream.h> void main() { cout<<"请输入二进制数"; char num[30];char num2[30]; cin.getline(num,30); for(int i=0;num[i];i++) { num2[i]=num[i]-'0'; //把字符型转成整型 } for(………………) //利用位权乘的方法转成二进制 …… (帮我补充循环) …… } 大哥大姐们啊,我就剩这10分了。请帮我一下吧。

第1个回答  2019-06-01
#include
<iostream.h>
#include
<math.h>
void
main()
{
cout<<"请输入二进制数";
char
num[30];char
num2[30];
cin.getline(num,30);
for(int
i=0;num[i];i++)
{
num2[i]=num[i]-'0';
//把字符型转成整型
}
//补充
int
result
=
0;
for(int
j=0;j<i;j++)
{
if(num2[j])
result
+=
pow(2,i-j-1);
}
cout
<<
result
<<
endl;
//补充
}
相似回答