编程求出任一输入字符的ASCII码,怎么编?

编程求出任一输入字符的ASCII码,怎么编?,第1张

getchar()读入输入字符

把返回值赋值给int类型变量,该变量即为要求的ASCII码

#include <stdioh>
int main()
{
    int a = getchar();
    printf("%d\n", a);//输出int值即为读入字符的ASCII码
    return 0;
}

如果已经读入了字符a是char类型,那么直接将char转换为int类型即可。

char a='a';
int i;
i=a;//i为a的ASCII码

ascii码就是最基本的一个字节的二进制数据,但不是直接相等,因为ascii码不仅表示数字,还要表示字符,它们统一安排在一起顺序排序成表,其中的顺序号即为我们通称的ascii码。
顺序0~9首先被用来表示字符(null)/没有任何书写笔画的空着的‘空’字符到(tab)/制表跳格键符,数学的数字0~9被顺延至序号为48~57位置,所以数字0在ascii的序号即位置为48,而48的二进制数值为110000,同理,数字2的序号为50,50的二进制数值为110010,写成一个字节为00110010,这正是数学数字2的ascii码。
Pula
Sep07,2017 Shenzhen

G在ASCII码中的代码是"0100 0111",一般用16进制表达成47H,换算方法是用0248码计算,就是把前四位的"0100"看成8420排列,0为没有,1为相应位的数字,0100在"4"位上有1,所以为4,而0111在4、2、0位都有1,则结果应为4+2+1=7,此为二进制换算十六进制方法,而47H中的H,是十六进制的缩写,意思仅仅是47这个数字为十六进制而已,按照字母顺序,J比G大三个,则按照二进制计算其代码应为"0100 1010",前四位还为四,后四位为8+2=10,在十六进制中,10用A代替,所以为4AH!希望你能看懂!

1、ascii码常用的进制有二进制、八进制、十进制、十六进制。
2、这些进制之间的互转也是二、八、十、十六进制之间的互转。
3、十进制到二、八、十六进制,采用十进制数除以进制基数取余的方法。
4、二、八、十六进制转十进制,采用加权展开式方式计算。
5、二进制与八、十六进制互转,采用二进制分组计算的方式。
6、八进制与十六进制互转,采用先转二进制再分组计算的方式。
7、细节百度进制转换。

ascii码不是算出来的,是设计 ascii 码时规定好的。
比如字符 A 的 acsii 码就是规定为 65,字符 B 的 ascii 码就是规定为 66。
这个题中需要掌握的其实是二制运算:
用 A 的 ascii 码加上 4 ,也就是二进制的:01000001 + 100 = 01000101
所以正确答案是 C


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13246845.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-26
下一篇 2023-06-26

发表评论

登录后才能评论

评论列表(0条)

保存