4 - 二進制轉十進制
- 給你一個二進制的數,請輸出其十進制對應的數字。
- 原題鏈接
輸入
- 輸入一個二進制的非負整數N,保證在int范圍內。
輸出
- 輸出轉換后的數
樣例
輸入復制
1011
輸出復制
11
輸入復制
0
輸出復制
0
輸入復制
111
輸出復制
7
題解
#include <stdio.h>
int main(){
char ch;
int a=0;
while(ch=getchar(),ch!='\n')
a=a*2+(ch-'0');
printf("%d\n",a);;
return 0;
}
十進制轉二進制
#include <stdio.h>
int main() {
int i = 0, n, a[32];
scanf("%d", &n);
if(n==0){ //只考慮非負整數!!!
printf("%d",n);
}else{
for (i=0; n>0; n /= 2)
a[i++] = n % 2;
for (i--; i >= 0; i--)
printf("%d", a[i]);
}
printf("\n");
return 0;
}