C语言。编写一个程序,输入一个二进制的字符串(长度不超过32),然后计算出相应的十进制整数,并打印。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言。编写一个程序,输入一个二进制的字符串(长度不超过32),然后计算出相应的十进制整数,并打印。相关的知识,希望对你有一定的参考价值。
编写一个程序,输入一个二进制的字符串(长度不超过32),然后计算出相应的十进制整数,并把它打印出来。
输入格式:输入为一个字符串,每个字符都是’0’或’1’,字符串的长度不超过32。
输出格式:输出一个整数。
输入输出样例
输入样例:
1101
输出样例:
13
我的程序:
#include <stdio.h>
#include <string.h>
int main()
char data[33];
int dota[33];
int i, j, num, len;
gets(data);
len = strlen(data);
for (i = 0; i <= len; i++)
if (data[i] == '1')
dota[i] = (int)data[i] -48;
else if (data[i] == '0')
dota[i] = (int)data[i] - 48;
num = dota[0];
for (j = 1; j <= len; j++)
num = num * 2 + (int)dota[j];
printf("%d", num);
在学数组。请问哪里错了?
有什么简单的方法吗?
#include <string.h>
int main()
char data[33];
int dota[33];
int i, j, num, len;
gets(data);
len = strlen(data);
for (i = 0; i <= len; i++)
dota[i] = (int)data[i] -'0';
num = dota[0];
for (j = 1; j < len; j++)
num = num * 2 + (int)dota[j];
printf("%d\n", num);
//改了一下,自己看吧!不明可以问的!本回答被提问者采纳
以上是关于C语言。编写一个程序,输入一个二进制的字符串(长度不超过32),然后计算出相应的十进制整数,并打印。的主要内容,如果未能解决你的问题,请参考以下文章
ZZNUOJ_用C语言编写程序实现1160:字符串长度(指针专题)(附完整源码)
ZZNUOJ_用C语言编写程序实现1142:二进制数的大小(附完整源码)
ZZNUOJ_用C语言编写程序实现1139:输出最短字符串(附完整源码)