欢迎来到天天文库
浏览记录
ID:48807595
大小:413.00 KB
页数:96页
时间:2020-01-27
《C语言字符串与数组.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第十章字符串与数组10.1字符型数据与字符串10.1.1字符型常量在C语言中,用单引号把一个字符括起来就是字符常量。例如:’A’、’b’、’+’、’5’10.1字符型数据与字符串说明:字符常量只能用单引号括起来,不能用双引号括起来字符常量只能包含一个字符,如’abc’是非法的单引号中大写字母和小写字母代表不同的字符常量,如’A’和’a’是不同的字符常量10.1字符型数据与字符串字符常量在内存中占一个字节,存放的是字符的ASCII代码值。ASCII码对照表10.1字符型数据与字符串10.1.2可对字符常量进行的运算在C语言中,字符常量可参与任何整数运算例如:‘B’–‘A’66–6
2、51‘A’+265+267大小写转换:‘A’+3297‘a’‘a’-3265‘A’数字字符与整数的转换:‘9’–‘0’99+‘0’57‘9’10.1字符型数据与字符串10.1.3字符型变量在C语言中,字符型变量用关键字char进行定义格式:char字符型变量名例如:charch;ch=‘A’;10.1字符型数据与字符串说明:字符型变量在内存中占一个字节,存放字符的ASCII码值,可以参与整型变量所允许的任何运算。10.1字符型数据与字符串例如:charch;ch=‘A’;ch=ch+32;/*大写转小写*/ch++;/*转换成’b’*/10.1字符型数据与字符串10.1.4字符
3、型数据的输入与输出1、调用printf和scanf函数输出和输入字符printf函数使用格式:ch=‘A’;printf(“%c”,ch);10.1字符型数据与字符串注意:字符数据可以使用%d格式输出其ASCII码值ch=‘A’;printf(“%d”,ch);10.1字符型数据与字符串scanf函数使用格式:scanf(“%c”,输入项);例如:charch;scanf(“%c”,&ch);10.1字符型数据与字符串注意:在连续输入多个字符时,字符之间不要输入间隔符(空格、回车、TAB键等)。否则间隔符本身也将作为字符输入。例如:charch1,ch2,ch3;sca
4、nf(“%c%c%c”,&ch1,&ch2,&ch3);若要输入字符’A’、’B’、’C’,正确输入方法是:ABC/*CR表示回车*/10.1字符型数据与字符串2、调用putchar和getchar函数输出和输入字符putchar用于输出字符,调用形式如下:charch;ch=‘A’;putchar(ch);/*等价于printf(“%c”,ch);*/10.1字符型数据与字符串getchar函数用于输入字符,调用形式如下:charch;ch=getchar();/*等价于scanf(“%c”,&ch);*/10.1字符型数据与字符串10.1.5字符串常量字符串常量是用
5、双引号括起来的一串字符例如:“ABC”、“1234”、“2009-03-01!”10.1字符型数据与字符串说明:字符串必须用双引号括起来,字符个数不限每个字符串的结尾,都由系统自动隐含加入一个‘ ’作为字符串的结束标记例如:“ABCD”“ABCD ”10.1字符型数据与字符串在C语言中,字符串只有常量形式,没有变量形式,不能通过定义变量来存储字符串。但是前面讲过的数组却可以存储字符串,实现对字符串的编程操作。例如:“ABCDE”/*一串连续的字符*/chara[6];/*一串连续的存储单元*/a[0]a[1]a[2]a[3]a[4]a[5]显然,数组与字符串的结构相同,完全
6、可以存储字符串10.2用一维数组存放字符串在C语言程序中,一般通过赋初值方式给一维字符数组赋字符串。例如:charstr[6]=“ABCDE”;效果如下所示:ABCDE str[0]str[1]str[2]str[3]str[4]str[5]定义数组时,数组的元素个数应至少比字符串的字符个数多一个,用来存放字符串结束标记 10.2用一维数组存放字符串如果在定义数组时,没有预留 的位置,则系统不认为数组存储了一个字符串。例如:charstr[5]=“ABCDE”;ABCDEstr[0]str[1]str[2]str[3]str[4]系统认为数组str存放了5个毫不相干的字符
7、,分别是’A’、’B’、’C’、’D’、’E’10.2用一维数组存放字符串在赋初值时,可以通过字符串中字符的个数决定数组的大小。例如:charstr[]=“ABCDE”;效果如下所示:ABCDE str[0]str[1]str[2]str[3]str[4]str[5]10.2用一维数组存放字符串给数组赋字符串,只能以赋初值的方式进行,其他直接赋值方式都是不允许的。例如:charstr[6];str=“ABCDE”;/*这样做是错误的*/10.2用一维数组存放字符串到目前为止,我们虽然可以用
此文档下载收益归作者所有