计算机二级c 第六章,全国计算机等级考试二级c第六章字符型数据课件

a7f4a3f590493a1e451dd952a488fd7c.gif 全国计算机等级考试二级c第六章字符型数据课件

(20页)

44cbd5cb0a1653285ce803d849acd9a9.gif

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

19.90 积分

全国计算机等级考试二级C,第六章 字符型数据,2010年10月- 2011年3月,第六章 字符型数据,6.1字符型常量,课后习题,6.2字符变量,6.3字符的输入和输出,6.4程序举例,,字符常量是用单引号括起来的一个字符。 例如: 'a'、'b'、'='、'+'、'?' 都是合法字符常量。 在C语言中,字符常量有以下特点: 字符常量只能用单引号括起来,不能用双引号或其它括号。 字符常量只能是单个字符,不能是字符串。 字符可以是字符集中任意字符。但数字被定义为字符型之后就不能参与数值运算。如'5'和5 是不同的。'5'是字符常量,不能参与运算。,6.1.1字符常量,字符常量在内存中占一个字节,存放的是字符的ASCII代码值。C语言规定,所有字符常量都作为整型量来处理,在计算机内部,其对应的整数值就是ASCII字符集中该字符的序号( 即ASCII代码值).,,转义字符是一种特殊的字符常量。转义字符以反斜线“\“开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。例如,在前面各例题printf函数的格式串中用到的“\n”就是一个转义字符,其意义是“回车换行”。转义字符主要用来表示那些用一般字符不便于表示的控制代码。 常用的转义字符及其含义,6.1.2转义字符常量,,广义地讲,C语言字符集中的任何一个字符均可用转义字符来表示。表中的\ddd和\xhh正是为此而提出的。ddd和hh分别为八进制和十六进制的ASCII代码。如\101表示字母“A“ ,\102表示字母“B“,\134表示反斜线,\xOA表示换行等。 【例3.8】转义字符的使用。 main() { int a,b,c; a=5; b=6; c=7; printf(“ ab c\tde\rf\n”); printf(“hijk\tL\bM\n”); } 注意: P68(1)-(3),,6.1.3字符串常量,字符串常量是由一对双引号括起的字符序列。例如: “CHINA“ , “C program” , “$12.5“ 等都是合法的字符串常量。 字符串常量和字符常量是不同的量。它们之间主要有以下区别: 1) 字符常量由单引号括起来,字符串常量由双引号括起来。 2) 字符常量只能是单个字符,字符串常量则可以含一个或多个字符。 3)可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予一个字符变量。在C语言中没有相应的字符串变量。这是与BASIC 语言不同的。但是可以用一个字符数组来存放一个字符串常量。在数组一章内予以介绍。 4)字符常量占一个字节的内存空间。字符串常量占的内存字节数等于字符串中字节数加1。增加的一个字节中存放字符“\0“ (ASCII码为0)。这是字符串结束的标志。 例如: 字符串 “C program“ 在内存中所占的字节为:,字符常量'a'和字符串常量“a“虽然都只有一个字符,但在内存中的情况是不同的。 'a'在内存中占一个字节,可表示为:,“a“在内存中占二个字节,可表示为:,综上所述,字符常量‘a'与字符串常量“a“是两回事: (1)定界符不同:字符常量使用单引号,而字符串常量使用双引号; (2)长度不同:字符常量的长度固定为1,而字符串常量的长度,可以是0,也可以是某个整数; (3)存储要求不同:字符常量存储的是字符的ASCII码值,而字符串常量,除了要存储有效的字符外,还要存储一个结束标志’\0’。,,6.1.4可对字符量进行的运算,每个字符变量被分配一个字节的内存空间,因此只能存放一个字符。字符值是以ASCII码的形式存放在变量的内存单元之中的。 如x的十进制ASCII码是120,y的十进制ASCII码是121。对字符变量a,b赋予'x'和'y'值: a='x'; b='y'; 实际上是在a,b两个单元内存放120和121的二进制代码: a:01111000 b: 01111001 所以也可以把它们看成是整型量。C语言允许对整型变量赋以字符值,也允许对字符变量赋以整型值。在输出时,允许把字符变量按整型量输出,也允许把整型量按字符量输出。 整型量为二字节量,字符量为单字节量,当整型量按字符型量处理时,只有低八位字节参与处理。,,6.1.4可对字符量进行的运算(续),【例】向字符变量赋以整数。 main() { char a,b; a=120; b=121; printf(“%c,%c\n“,a,b); printf(“%d,%d\n“,a,b); } 本程序中定义a,b为字符型,但在赋值语句中赋以整型值。从结果看,a,b值的输出形式取决于printf函数格式串中的格式符,当格式符为“c“时,对应输出的变量值为字符,当格式符为“d“时,对应输出的变量值为整数。,,6.1.4可对字符量进行的运算(续),【例】 main() { char a,b; a='a'; b='b'; a=a-32; b=b-32; printf(“%c,%c\n%d,%d\n“,a,b,a,b); } 本例中,a,b被说明为字符变量并赋予字符值,C语言允许字符变量参与数值运算,即用字符的ASCII 码参与运算。由于大小写字母的ASCII 码相差32,因此运算后把小写字母换成大写字母。然后分别以整型和字符型输出。,,6.2字符变量,字符变量用来存储字符常量,即单个字符。 字符变量的类型说明符是char。字符变量类型定义的格式和书写规则都与整型变量相同。,字符变量的类型关键字为char,一般占用1字节内存单元。 一、变量值的存储 字符变量用来存储字符常量。将一个字符常量存储到一个字符变量中,实际上是将该字符的ASCII码值(无符号整数)存储到内存单元中。 例如, char ch1, ch2; /*定义两个字符变量:ch1,ch2*/ ch1=’a’; ch2=’b’; /*给字符变量赋值*/,,二、特性 字符数据在内存中存储的是字符的ASCII码── 一个无符号整数,其形式与整数的存储形式一样,所以C语言允许字符型数据与整型数据之间通用。 (1)一个字符型数据,既可以字符形式输出,也可以整数形式输出。 [案例] 字符变量的字符形式输出和整数形式输出。 main() { char ch1,ch2; ch1='a'; ch2='b'; printf(“ch1=%c,ch2=%c\n”,ch1,ch2); printf(“ch1=%d,ch2=%d\n”,ch1,ch2); } 程序运行结果: ch1=a,ch2=b ch1=97,ch2=98,,(2)允许对字符数据进行算术运算,此时就是对它们的ASCII码值进行算术运算。 [案例] 字符数据的算术运算。 /*程序功能:字符数据的算术运算*/ main() { char ch1,ch2; ch1=‘a’; ch2=‘B’; /*字母的大小写转换*/ printf(“ch1=%c,ch2=%c\n”,ch1-32,ch2+32); /*用字符形式输出一个大于256的数值*/ printf(“ch1+200=%d\n“, ch1+200); printf(“ch1+200=%c\n“, ch1+200); printf(“ch1+256=%d\n“, ch1+256); printf(“ch1+256=%c\n“, ch1+256); },程序运行结果: ch1=A,ch2=b ch1+200=297 ch1+200=) ch1+256=353 ch1+256=a,,6.3字符的输入和输出,,在使用C语言库函数时,要用预编译命令 #include 将有关“头文件”包括到源文件中。 使用标准输入输出库函数时要用到 “stdio.h”文件,因此源文件开头应有以下预编译命令: #include 或 #include ”stdio.h” 具体见书本P69-70页(前面已介绍),6.3.1调用printf和scanf函数输出和输入字符,,一、 putchar函数是字符输出函数,其功能是在显示器上输出单个字符。 其一般形式为: putchar(字符变量) 例如: putchar('A'); (输出大写字母A) putchar(x); (输出字符变量x的值) putchar(‘\101’); (也是输出字符A) putchar('\n'); (换行) 对控制字符则执行控制功能,不在屏幕上显示。 使用本函数前必须要用文件包含命令: #include 或 #include “stdio.h”,6.3.2调用putchar和getchar函数输出和输入字符,,【例】输出单个字符。 #include main() { char a='B',b='o',c='k'; putchar(a);putchar(b);putchar(b);putchar(c); putchar('\t'); putchar(a);putchar(b); putchar('\n'); putchar(b);putchar(c); },,二、getchar函数(键盘输入函数) getchar函数的功能是从键盘上输入一个字符。 其一般形式为: getchar(); 通常把输入的字符赋予一个字符变量,构成赋值语句,如: char c; c=getchar(); 使用getchar函数还应注意几个问题: 1)getchar函数只能接受单个字符,输入数字也按字符处理。输入多于一个字符时,只接收第一个字符。 2)使用本函数前必须包含文件“stdio.h”。 3)在TC屏幕下运行含本函数程序时,将退出TC 屏幕进入用户屏幕等待用户输入。输入完毕再返回TC屏幕。 4) 程序最后两行可用下面两行的任意一行代替: putchar(getchar()); printf(“%c”,getchar());,,【例】输入单个字符。 #include void main() { char c; printf(“input a character\n“); c=getchar(); putchar(c); },,6.4 程序举例,见教材P71页 例6.1、例6.2 、例6.3 、例6.4 、例6.5 。,课后习题,,,,,,,,P73-75页:一、选择题 二、填空题 三、改错题,,,, 关 键 词: 全国 计算机等级考试 二级 第六 字符 数据 课件

4d91c43bfc72ca913299809b07b4968f.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值