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

已知的ASCII码是一个int类型的数组,都是0、1,长度是4的倍数,怎么输出每4位二进制数对应的字符?

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

#include <stdio.h>
#include <string.h>

#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<n; i+=8)
{
printf("%c", get_my_char(a+i));
}
printf("\n");
}
return 0;
}

/**
* 测试数据:
* 01000001010000100110110000111111
* 01010101
* #
* 输出:
* ABl?
* U
*/
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-17
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<<t;
system("pause");
}本回答被提问者采纳
第2个回答  2012-04-08
4个一组分类。
第3个回答  2012-04-08
先算出来...再数出来...

C++中输入ascll码值如何输出对应的字符?
cout << "请输入一个ASCII码值: ";cin >> ascii_value;char ch = (char)ascii_value;cout << "对应的字符为: " << ch << endl;return 0;}

C++ 已知ASCII码值,怎么输出对应的字符
一般可以从键盘输入的ASCII码是从31到127,需要用8个bit,也就是一个字节来表示,而4位的二进制数只有半个字节,题目都有问题怎么能够得到答案呢?以下是8个二进制数为一单位的字符的输出。include <stdio.h> include <string.h> define N 1000 \/\/ 把N调大可以增加字符长度 char a[N];int get...

c++中如何将一个ascii码转成对应的字母?
整体思路如下:1、判断这个值的范围 如果是'0'到'9' 减去'0'就是想要的整数的。2、如果是个字符串,可以用sscanf() 就和输入一样。定义一个char型的变量,直接附值等于ascii码 char MyVar = 65;那么MyVar的值就是'A'.

描述用C++编程, 输入一个ASCII码,输出对应的字符。
void main(){ int a[1000];int i,j=0;while(scanf("%d",&a[j])!=EOF) j++;for(i=0;iprintf("%c",a[i]);}

c++怎么输出ascii码对应的字符?
c++中有对应的公式 是电脑具体编号的一套 必须要先写公式。先定义字符ch,输入字符,在把字符强制转换成整数就是该字符的ASCII码值,即int(ch)。ASCII是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO\/IEC 646。在计算机中,...

c++怎么输出ascii码对应的字符
1 int main(){ \/\/批注:这是 char 转 int 的代码。不要搞混了 char ch; cin>>ch\/\/我用#iostream cout<<int(ch)<<endl; }2 int main(){ \/\/批注:这是 int 转 char int in; cin>>in; cout<<char(in)<<endl; }3 int main(){ \/\/批注:bool ...

如何使C++将数字转换为ASC2码表中对应的符号输出?
ASCII码表中的字符值范围为0-127,每一个数值对应一个ascii字符,该数值就对应字符的ascii值。输出方式为:C语言方式:用printf()函数,%d格式输出整数值,%c格式输出字符,全部ascii输出代码:include <stdio.h>void main(){ int i; \/\/这里i也可以定义成unsigned char 类型,下面代码无区别 f...

描述 输入一个ASCII码,输出对应的字符。 C++代码
include <stdio.h>int main(){int ch;scanf("%d", &ch);printf("%c\\n", (char)ch);return 0;} include <iostream>using namespace std;int main(){int ch;cin >> ch;cout << (char)ch << endl;return 0;}

...C++程序设计题,输入某大写字母的ASCII码值,输出该字母的对应小写字...
{ int i;printf("请输入该大写字母的ASCII码值:");scanf("%d",&i);if(i>=65&&i<=90){ printf(" %d 对应的小写字母是 %c \\n",i,i+32);} else printf("输入的数字错误\\n");} 一个字母的大写字母与其小写字母相差32,而且字符型与整形变量时互通的,只是输出的控制符一个是%d一个...

救命啊,C++程序设计题,输入某大写字母的ASCII码值,输出该字母的对应小...
argv[]){ int i;cout<<"输入一个大写字母的ASCII码值:"<<endl;cin>>i;if (i>='A'&&i<='Z'){ cout<<"这个大写字母是:"<<char(i)<<endl;cout<<"相应的小写字母是:"<<char(i+32)<<endl;} else { cout<<"输入的不是大写字母的ASCII码值!!"<<endl;} return 0;} ...

相似回答