C++ 已知ASCII码值,怎么输出对应的字符

2024-11-22 00:39:23
推荐回答(4个)
回答1:

一般可以从键盘输入的ASCII码是从31到127,需要用8个bit,也就是一个字节来表示,而4位的二进制数只有半个字节,题目都有问题怎么能够得到答案呢?
以下是8个二进制数为一单位的字符的输出。

#include
#include

#define N 1000
// 把N调大可以增加字符长度
char a[N];

int get_my_char(char *s)
{
int ans = 0;
for ( int i=0; i<8; i++)
ans = ans*2+*(s+i)-'0';
return ans;
}

int main()
{
while (scanf("%s", a) != EOF && strcmp(a, "#")) // 直接输入01串,程序以#结束
{
int n = strlen(a);
for ( int i=0; i {
printf("%c", get_my_char(a+i));
}
printf("\n");
}
return 0;
}

/**
* 测试数据:
* 01000001010000100110110000111111
* 01010101
* #
* 输出:
* ABl?
* U
*/

回答2:

void main()
{ char t;
int a=1100001;
int b[8];
for(int i=0;i<8;i++)
{
b[i]=a%10;
a/=10;
}
int s=0,j=1;
for(int i=0;i<8;i++)
{
s+=b[i]*j;
j*=2;
}
t=(char)s;
cout<system("pause");
}

回答3:

4个一组分类。

回答4:

先算出来...再数出来...