首先我们要知道26个英文字母实际上对应着97-122这26个十进制数字,也就是对应的ASCII码,然后我们把他们转换为二进制前面加0就可以了。
#include<stdio.h>
int main(void)
{
int transfer(int ch);
char ch;
printf("请输入一个字母:");
scanf("%c",&ch);
printf("%c:%4d ", ch, ch);
printf("转换成二进制数是:%d\n",transfer(ch));
}
int transfer(int ch)
{
int p=1,y=0,yushu;
while(1)
{
yushu=ch%2;
ch/=2;
y+=yushu*p;
p*=10;
if(ch<2)
{
y+=ch*p;
break;
}
}
return y;
}