二进制转化为十进制
#include<stdio.h>
#include<string.h>
int main()
{
char a[33];
int i, num = 0;
scanf("%s", a);
for(i=strlen(a)-1; i>=0; i--)
{
num*=2; /*如果用位运算的话,速度会更快*/
num+=a[i]-'0';
}
printf("%d\n", num);
return 0;
}
十进制转化为二进制
熟练使用 itoa()库函数
#include<stdio.h>
#include<stdlib.h>
int main()
{
int num,result;
scanf("%d",&num); //输入一个十进制数
char str[20];
result = atoi( itoa(num, str, 2) );
printf("%d\n", result);
return 0;
#include<stdio.h>
#include<string.h>
int main()
{
char a[33];
int i, num = 0;
scanf("%s", a);
for(i=strlen(a)-1; i>=0; i--)
{
num*=2; /*如果用位运算的话,速度会更快*/
num+=a[i]-'0';
}
printf("%d\n", num);
return 0;
}
十进制转化为二进制
熟练使用 itoa()库函数
#include<stdio.h>
#include<stdlib.h>
int main()
{
int num,result;
scanf("%d",&num); //输入一个十进制数
char str[20];
result = atoi( itoa(num, str, 2) );
printf("%d\n", result);
return 0;
}