字符与字符串处理
一、字符与字符串类型的使用
Var 字符变量名:char;
字符类型是一个有序类型,字符的大小顺序按ASCII码的大小决定。相关的函数有succ、pred、ord、chr等。
VAR A:CHAR;
BEGIN
READLN(A);
WRITELN('A:',A);
WRITELN('SUCC(A):',SUCC(A));
WRITELN('PRED(A):',PRED(A));
WRITELN('ORD(A):',ORD(A));
WRITELN('CHR(ORD(A)):',CHR(ORD(A)));
END.
例:按字母表顺序和逆序每隔一个字母打印。即打印出:
a c e g i k m o q s u w y
z x r v t p n l j h f d b
for i:=1 to 13 do write(chr(63+2*i):4);writeln;
for i:=1 to 13 do write(chr(92-2*i):4);writeln
字符串
〖语法分析〗
字符串用于存放整批的字符数据。通常编程中使用字符串存放字符化了的数字数据。如高精度运算时存放操作数和运算结果。字符串可以看作是特殊的字符串数组来处理。当然,它也有自已的特点。下面是字符串定义的格式:
var s:string; s1:string[15]; s[1] s[2] … s[255] s[0] ord(s[0])
字符串定义时,如不指定长度,则按该类型的最大长度(255个字符)分配空间,使用时最大可用长度为255个;如果在中括号中给出一个具体的值(1—255之间),则按这个值的大小分配空间。使用时,最大的可用长度即为该值。
1、字符串的输入、输出:
字符串类型既可按数组方式输入、输出,也可直接输入、输出:readln(s);writeln(s);多个字符串输入时以回车作为数据间的分隔符;每个readln语句只能读入一个字符串。
2、有关字符串的操作:
|
[例6、3]把26个英语字母正向、逆向打印出来。 Const s:string[26]=’abcdefghijklmnopqrstuvwxyz’; Var t:string[26]; I:integer; Begin t:=’ ‘; {共26个空格} For I:=1 to 26 do begin T[I]:=s[27-I]; End; Writeln(s); Writeln(t); End. [例6、4]找出所有的四位回文数:(回文数就是一个数从左往右读与从右往左读都是同一个数) var s:string[4]; n:integer; begin for n:=1000 to 9999 do begin str(n,s); if (s[1]=s[4]) and (s[2]=s[3]) then write(n:6); end; end. 或者用如下程序: var n:integer; s,t:string; begin for n:=10 to 99 do begin str(n,s); t:=s+s[2]+s[1]; write(s:6); end; end. 上述两个程序,哪个快,哪个慢?
浙公网安备 33010602011771号