C语言中 为什么c2=c1-32;输入小写字母a 就会输出大写字母B呢 C语言中输入小写输出大写为什么是+32而不是+26??

c\u8bed\u8a00\u8f93\u5165\u4e00\u4e2a\u6570\u51cf32\u7136\u540e\u8f93\u51fa\u548c\u8f93\u5165\u5c0f\u5199\u5b57\u6bcd\u53d8\u4e3a\u5927\u5199\u5b57\u6bcd\u6709\u4ec0\u4e48\u533a\u522b\uff1f

\u5728
C
\u8bed\u8a00\u4e2d\u533a\u5206\u5b57\u6bcd\u7684\u5927\u5c0f\u5199\uff0c\u5229\u7528
ASCII
\u7801\u4e2d\u5927\u5199\u5b57\u6bcd\u548c\u5c0f\u5199\u5b57\u6bcd\u4e4b\u95f4\u7684\u8f6c\u6362\u5173\u7cfb\uff08\u5dee\u503c\u4e3a
32\uff09\uff0c\u53ef\u4ee5\u5c06\u5c0f\u5199\u5b57\u6bcd\u8f6c\u6362\u4e3a\u5927\u5199\u5b57\u6bcd\u3002\u7f16\u5199\u7a0b\u5e8f\u5b9e\u73b0\uff0c\u4ece\u952e\u76d8\u4e0a\u8f93\u5165\u4e00\u4e2a\u5c0f\u5199\u5b57\u6bcd\uff0c\u6309\u56de\u8f66\u952e\uff0c\u7a0b\u5e8f\u5c06\u8be5\u5c0f\u5199\u5b57\u6bcd\u8f6c\u6362\u4e3a\u5927\u5199\u5b57\u6bcd\uff0c\u5e76\u8f93\u51fa\u5176
ASCII
\u503c\u3002
\u7b97\u6cd5\u601d\u60f3
\u7531\u4e8e\u5927\u5199\u5b57\u6bcd\u4e0e\u5c0f\u5199\u5b57\u6bcd\u4e4b\u95f4\u7684\u5dee\u503c\u4e3a
32\uff0c\u56e0\u6b64\u5c0f\u5199\u5b57\u6bcd\u8f6c\u6362\u4e3a\u5927\u5199\u5b57\u6bcd\u7684\u65b9\u6cd5\u5c31\u662f\u5c06\u5c0f\u5199\u5b57\u6bcd\u7684
ASCII
\u7801\u503c\u51cf\u53bb
32\uff0c\u4fbf\u53ef\u5f97\u5230\u4e0e\u4e4b\u5bf9\u5e94\u7684\u5927\u5199\u5b57\u6bcd\u3002
\u5229\u7528
getchar
\u51fd\u6570\u4ece\u952e\u76d8\u4e0a\u8f93\u5165\u4e00\u4e2a\u5c0f\u5199\u5b57\u6bcd\uff0c\u5e76\u5c06\u5176\u8d4b\u7ed9\u4e00\u4e2a\u5b57\u7b26\u53d8\u91cf
a\uff1b\u7136\u540e\u5c06
a\u201432
\u7684\u503c\u8d4b\u7ed9\u5b57\u7b26\u53d8\u91cf
b\uff1b\u6700\u540e\u8fdb\u884c\u8f93\u51fa\uff0c\u8f93\u51fa\u65f6\u5148\u8f93\u51fa\u5b57\u6bcd\uff0c\u518d\u5c06\u5b57\u6bcd\u4ee5\u6574\u6570\u5f62\u5f0f\u8f93\u51fa\u3002\u5176\u5177\u4f53\u6b65\u9aa4\u5982\u4e0b\uff1a
\u2460
\u5b9a\u4e49\u4e24\u4e2a\u5b57\u7b26\u53d8\u91cf
a\u3001b\uff1b
\u2461
a=get
char()\uff1b
\u2462
b=a\u201432\uff1b
\u2463
\u6253\u5370\u8f93\u51fa\u3002
\u7a0b\u5e8f\u4ee3\u7801
#include

int
main()
{
char
a,b;
printf("\u8f93\u5165\u4e00\u4e2a\u5c0f\u5199\u5b57\u6bcd:\n");
a=getchar();
b=a-32;
printf("\u8f6c\u6362\u540e\u7684\u5b57\u6bcd\u4e3a\uff1a%c\uff0c%d\n",b,b);
return
0;
}
\u8c03\u8bd5\u8fd0\u884c\u7ed3\u679c
\u8f93\u5165\u5c0f\u5199\u5b57\u6bcd
c
\u65f6\uff0c\u8f6c\u6362\u540e\u7684\u5927\u5199\u5b57\u6bcd\u53ca\u6240\u5bf9\u5e94\u7684
ASCII
\u503c\u5982\u4e0b\u6240\u793a\uff1a
\u8f93\u5165\u4e00\u4e2a\u5c0f\u5199\u5b57\u6bcd:
c
\u8f6c\u6362\u540e\u7684\u5b57\u6bcd\u4e3a\uff1aC\uff0c67
\u8f93\u5165\u5c0f\u5199\u5b57\u6bcd
m
\u65f6\uff0c\u8f6c\u6362\u540e\u7684\u5927\u5199\u5b57\u6bcd\u53ca\u6240\u5bf9\u5e94\u7684
ASCII
\u503c\u5982\u4e0b\u6240\u793a\uff1a
\u8f93\u5165\u4e00\u4e2a\u5c0f\u5199\u5b57\u6bcd:
m
\u8f6c\u6362\u540e\u7684\u5b57\u6bcd\u4e3a\uff1aM\uff0c77
\u603b\u7ed3
\u2460
\u5b9e\u4f8b\u5185\u5bb9\u8981\u6c42\u5bf9
ASCII
\u7801\u6709\u6240\u4e86\u89e3\u3002\u77e5\u9053\u5c0f\u5199\u5b57\u6bcd\u548c\u5927\u5199\u5b57\u6bcd\u4e4b\u95f4\u7684\u5dee\u503c\u4e3a
32\u3002
\u2461
getchar
\u51fd\u6570\u7684\u529f\u80fd\u662f\u4ece\u952e\u76d8\u4e0a\u8f93\u5165\u4e00\u4e2a\u5b57\u7b26\u3002\u5176\u4e00\u822c\u5f62\u5f0f\u4e3a\u201cgetchar()\u201d\u3002\u901a\u5e38\u628a\u8f93\u5165\u7684\u5b57\u7b26\u8d4b\u4e88\u4e00\u4e2a\u5b57\u7b26\u53d8\u91cf\uff0c\u6784\u6210\u8d4b\u503c\u8bed\u53e5\uff0c\u5982\uff1achar
c;\u6216c=getchar();

\u56e0\u4e3a\u5728ASCII\u8868\u91cc\uff0c\u7b2c\u4e00\u4e2a\u5927\u5199\u5b57\u6bcd\u4e0e\u7b2c\u4e00\u4e2a\u5c0f\u5199\u5b57\u6bcd\u4e4b\u95f4\u7684ASCII\u503c\u521a\u597d\u76f8\u5dee32\uff0c\u800c\u4e0d\u662f26\u3002

帮你写一个字符转换时

如果它是一个字符串,那么请询问。然后帮你。

#包括中

无效的主要(){

所以char a;
A =的getchar();
若(a> ='A'&& A <='Z')
A + = 32;
否则,如果(A> ='A'&& A <='Z')
A级= 32;
的putchar(一);
的getch();
}

这是ASCALL 应用
c语言中每一个字符都有对应的ASCALL
A ->65
B ->66
a ->97
b ->98

还有你确定输出的是B不是A?

大写和小写字母的ASCII码值相差32

在C语言中,字符存储的本质是ASCII码值。
在ASCII码表中,大写字母和小写字母,都是按照字母顺序连续存储的。
其中:
大写字母'A'为0x41,即10进制的65;
大写字母'Z'为0x5A,即10进制的90;
小写字母'a'为0x61,即10进制的97;
小写字母'z'为0x7A,即10进制的122。
从以上可以看出,大写字母占了ASCII码的[65,90]区域,小写字母占了[97,122]区域。
对于相同的字母,大小写差值为32.
所以,c2=c1-32,在c1为小写字母情况下,c2就是对应的大写字母。

扩展阅读:c1小型货车图片大全 ... 学c1还是c2好 ... 幽门c13数值多少算严重 ... 驾照考c1和c2哪个更实用 ... c十十编程要学多久 ... c2多少钱报名费 ... 已经考了c2想考c1怎么考 ... 聪明人考c2驾照 ... c2准驾车型一览表 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网