作业帮 > 综合 > 作业

C语言,将一个二进制数,转换为对应的十进制数

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/30 20:18:36
C语言,将一个二进制数,转换为对应的十进制数
Input
输入一个二进制数,以回车结束.该二进制数为正数,长度不超过31.
Output
输出一个整数,为该二进制数对应的十进制数.
要c语言的 不要c++和其他的
C语言,将一个二进制数,转换为对应的十进制数
#include <stdio.h>

int main() {
\x09int i,flag,num;
\x09char s[33];
\x09while(gets(s)) {
\x09\x09num = 0;
\x09\x09flag = 1;
\x09\x09for(i = 0; s[i] && flag ;++i) {
\x09\x09\x09if(s[i] < '0' || s[i] > '1') flag = 0;
\x09\x09\x09else num = 2 * num + s[i] - '0';
\x09\x09}
\x09\x09if(flag) printf("(%s)2 <==> %d\n",s,num);
\x09\x09else printf("\"%s\"中有非法字符.\n",s);
\x09\x09fflush(stdin);
\x09}
\x09return 0;
}