//八位二进制转换为十进制数
#include <iostream>
using namespace std;
double power(double,int);
int main()
{
int value=0;
cout<<" enter an 8 bit binary number : ";
for(int i =7;i>=0;i--) {
char ch;
cin>>ch;
if(ch=='1')//不加单撇号,则会判别ch是否等于ascii中的为1的对应的元素。
value+=int(power(2.0,i));//强制类型转换如何?
}
cout<<"decimal value is " <<value<<endl;
return 0;
}
double power(double x,int n)
{
double pri=1;
while(n--)
pri=pri*x;
return pri;
}
需要注意的是char类型的变量ch要判别是不是等于数字1,要用单撇号,否则判别的是ASCII中对应码数为1的元素。因此若不加单撇号,输出大概率就是0.
总结:程序设计类似于应用题,根据学的基础知识,要多加以练习。同时要总结切入点,养成计算机思维,如累加,语法的应用等。