C语言的例题,其中putchar(c1-32)表示什么啊?为什么输出是A呢?书上说还可以写成put

C语言的例题,其中putchar(c1-32)表示什么啊?为什么输出是A呢?书上说还可以写成putchar('\101'),为什么啊?
#include“stdio.h”
viod main()
{ char c1;
c1='a';
putchar(c1);
putchar('\n');
putchar(c1-32);
}

这个就是字符类型在计算机内的表示方法导致的。

字符类型在计算机中其实是使用整数类型表示的,只是人们将0-127做了一个规定,每一个整数都代表一个固定的字符,这就是ASCII码,具体楼主可以查查ASCII码表的解释。

ASCII码表中,'A'的值是65,’a‘的值是97,所以'a' - 'A'就是97 - 65 = 32。

至于\101这个是一个转义字符,\开头的代表后面是8进制数,8进制101就是10进制的65,所以打印出来也是’A‘。追问

谢谢啦。

温馨提示:内容为网友见解,仅供参考
无其他回答

C语言的例题,其中putchar(c1-32)表示什么啊?为什么输出是A呢?书上说...
这个就是字符类型在计算机内的表示方法导致的。字符类型在计算机中其实是使用整数类型表示的,只是人们将0-127做了一个规定,每一个整数都代表一个固定的字符,这就是ASCII码,具体楼主可以查查ASCII码表的解释。ASCII码表中,'A'的值是65,’a‘的值是97,所以'a' - 'A'就是97 - 65 = 32。至...

C语言中 为什么c2=c1-32;输入小写字母a 就会输出大写字母B呢
A级= 32;的putchar(一);的getch();}

c语言大小写转换的一道题 大写变小写,小写变大写,非字母直接输出
char c1,c2;while(true){ while((c1=getchar())!='\\n'){ if (c1>65&&c1<91)c2=c1+32;else if(c1>96&&c1<123)c2=c1-32;putchar(c2);} putchar('\\n');} } lz啊,你这个写的东西错误也太多了 if else 之后都不要加;的。。。反正是一下我帮你写的吧。。。多看看书吧 ...

如何在C语言程序中输出小写字母a?
1、打开软件VisualC++6.0,新建一个C源程序,书写C语言程序。2、首先定义两个字符型变量,代码:charc1,c2;从键盘中输入一个大写字母,代码:c1=getchar();3、大写字母与小写字母的ASCII值相差32,代码:c2=c1+32;。将大写字母转化成小写字母。4、输出小写字母。使用putchar()函数,可以输出一个...

如何用c语言输出地址的内容,如下所示:
C语言中float,double等类型,在内存中的结构 来源:从存储结构和算法上来讲,double和float是一样的,不一样的地方仅仅是float是32位的,double是64位的,所以double能存储更 高的精度。任何数据在内存中都是以二进制(0或1)顺序存储的,每一个1或0被称为1位,而在x86CPU上一个字节是8位。比如...

C语言,从键盘输入一个大写字母,要求改用小写字母输出
1、首先用vs2017软件新建一个空白的c语言文件,引入头文件并建立主函数,主函数中先定义2个char类型的变量,一个用来接收用户输入的字母,另一个用来接收处理后的结果:2、接着先用getchar函数将用户输入的字符存入变量a中去,然后用b加上32即可得到小写字母,原因就是由于大写字母与小写字母之间的差值...

C语言:给定一个小写字母,转换成大写字母
1、C语言中,字符的存储占用一个字节,且都是使用其对应的ASCII码值来存储的。2、根据ASCII码表,我们可以看出:大、小写字母都是按顺序进行存储的,大写字母的ASCII值区间为:65~90,对应的字母为:'A'-'Z';小写字母的ASCII值区间为:97~122,对应的字母为:'a'-'z',因此,将小写字母转化为...

用C语言编程:从键盘输入一个英文大写字母,输出其对应的小写字母以及小写...
char ch; scanf("%c",&ch);\/\/输入大写字母 printf("%c,%d",ch-('A'-'a'),ch-('A'-'a')); \/\/输出.('A-'a')是ASC码表上大写与小写字母间的差值 \/\/ch-('A'-'a'):大写转小写。输出ASC码,利用输出格式控制%d就可以自动转换输出了 return 0; } ...

求C语言程序设计习题集与上机指导-第三版 (及答案)...
1.6 编写一个程序,输入a、b、c三个值,输出其中最大值。解:mian(){int a,b,c,max;printf(“请输入三个数a,b,c:\\n”);scanf(“%d,%d,%d”,&a,&b,&c);max=a;if(max<b)max=b;if(max<c)max=c;printf(“最大数为:“%d”,max);}第三章3.6写出以下程序运行的结果。main(){char c1=’a...

输入小写字母,输出的是大写字母,用getchar,putchar写,怎么写
使用getchar输入大写字母D,输出小写字母d? 谢谢了啊 #include<stdio.h> void main() { char c1,c2; c1 = getchar(); c2 = c1+32; 大写转小写 putchar(c2); 输出 putchar('\\n'); } 输入小写字母,输出对应的大写字母 c语言 小写变大写,应该这么写: 只处理一个字元...

相似回答