第十讲、字符和字符串.pptVIP

  • 2
  • 0
  • 约5.24千字
  • 约 32页
  • 2017-08-06 发布于河南
  • 举报
第十讲、字符和字符串

第十讲 字符与字符串;  字符型用char作为标识符。字符型必须用单引号括起来,字母作为字符型时,大小写是不等价的,并且字符型只允许单引号中有一个字符,否则就是字符串。;知识点: 1、字符的ASCII码(序号):一一对应关系;2、函数:ord(x) 、 chr(x) 、succ(x)、pred(x)、 1)、ord(x):返回字符x的ASCII码。    i:=ord(‘A’); j:=ord(‘B’);n:=ord(‘1’); write(I,j,n); 65 66 49 2)、 chr(x):返回ASCII码为x的字符。 var a:char; a:=chr(98); writeln(a);    write(chr(97)); ;3、字符大小的比较(相应字符ASCII码大小的比较):  ASCII码大的字符大。  ‘b’’a’ ‘5’’1’ ‘a’’A’;;练习题目: 从键盘上输入一串字符(可能含数字、小写字母),以#作为输入结束标志。 编程完成: 统计输入字符中每个小写字母出现的次数(没有出现的不输出)。 样例: 输入: 2bcdaab33wycc# 输出: a 2 b 2 c 3 d 1 w 1 y 1 ;算法一:;var ch:char; n,i:integer; a:array[97..122] of integer; {统计字母出现的次数} begin for i:=97 to 122 do a[i]:=0; read(ch); while ch# do begin if(ch=a)and(ch=z) then a[ord(ch)]:=a[ord(ch)]+1; read(ch); end; for i:=97 to 122 do {输出字符及出现的次数} if a[i]0 then writeln(chr(i), ,a[i]); end.;算法三:;字符串用于存放批量字符的一串字符。 Var:a:string; 或Var:a:string[n]; A:=‘hello’ 其中正整数n(1=n=255)表示构成字符串的字符最多个数。 若字符串说明中没有指定长度,缺省值为255。 Freepascal中新增加的字符串类型: ansistring;默认长度可达2562 -1=65535 Var St:ansistring;;字符串类型定义:    type 字符串类型标识符=string[n];    var     字符串变量:字符串类型标识符; 其中:n是定义的字符串长度,必须是0~255之间的自然整数,第0号单元中存放串的实际长度,程序运行时由系统自动提供,第1~n号单元中存放串的字符,若将string[n]写成string,则默认n值为255。  例如:type      man=string[8];      line=string;     var      name:man;      screenline:line; 另一种字符类型的定义方式为把类型说明的变量定义合并在一起。  例如:VAR      name:STRING[8];      screenline:STRING;;操作 ;字符串使用中的有关说明和注意事项: 1、字符串的输入和输出: 输入:字符串是以回车作为的结束标志.所以输入必须readln(s);每个readln语句只能读入一个字符串。不能readln(s1,s2); 输出:writeln(s); 2、字符串可以和数组一样操作: a:=’nabcdeg’; 则:a[1]:=‘n’;a[3]:=b; 输出:writeln(a); 或:for i:=1 to length(a) do write(a[i]); 3、从键盘只能接受127个字符;一般都是文件输入。 4、严格区分数字字符、数字字符串与数值的区别,但可以相互转化。 ‘4’4 ‘1326’1326 如:var a:char; i:integer; a:=‘4’;i:=ord(a)-48; writeln(i); {i=4};5、字符串大小的比较。 ‘123’=‘123’ ‘12345’’12325’

文档评论(0)

1亿VIP精品文档

相关文档