常用函数(字符和字符串)

Pascal常用的字符处理标准函数有5个

(1)ord(ch)           求字符ch对应的ASCII代码值;如 ord ('A')结果为65,ord(true)结果为1,ord(false)结果为0
(2)chr(x)            求x(x为1…255整数)的ASII代码对应的字符;如:chr(65)结果为 'A'。
(3)pred(ch)          前驱函数 pred('B')结果为'A'
(4)succ(ch)          后继函数 succ('B')结果为'C' 

---------------------------------------------------------------------------------------------------------------

Pascal常用的字符串处理标准函数有4个

(1)copy(str,n,m)        从字符串str的左边第n个开始截取m个字符;如:copy('Pascal' ,3,2)的结果为'sc' ;

(2)concat(str1,str2)     将两个字串连接成为一个新的字串;如:s:=str1+str2;同等于两串字符相加

(3)length(str)             求字串str的长度(字符个数);

(4)pos(str1,str2)        求字串str1在字串中开始的位置;若没找到, 函数值为0。 如:  pos('sca','pascal')结果为3;

(5)upcase(ch)              将字符串str所有字符转为大写字母,如 upcase('aBc')结果为'ABC' ;

---------------------------------------------------------------------------------------------------------------

Pascal常用的字符串处理标准过程有4个

(1)val(str,x)              将数字型字串转为数字并存入变量x中;如:val('68',x),x值为68|val(' 9',x)x值为9|val('a9',x)x值为0

(2)str(n,s)                将数字n转化为字串存入s中,如str(768,s)s的结果为 '768' ;

(3)insert(str1,str2,n)    把字串str1插入在字串str2的第n个字符之前,结果在str2中;{此过程中的str2为变量形参,具有传入传出的功能};

(4)delete(str,n,m)        从字串str的第n个开始,删除m个字符,把剩余的字符存在str中,{此过程中的str为变量形参,具有传入传出的功能};

------------------------------------------------------------------------------------------------------------------

 

 

------------------------------------------------------------------------------------------------------------------

//jzxx1114

var st:string;
    i,j,t,len:integer;
    s:longint;
begin
    readln(st);
    len:=length(st);
    t:=0;
    for i:=1 to len do
    begin
        val(copy(st,i,1),t);
        s:=s+t;
    end;
    writeln(s);
end.

 

 

 

 

 

 

------------------------------------------------------------------------------------------------------------------

 //jzxx1036

【方法一】

 

var
    a,b,c,i:longint;
    s:string;
begin
    readln(s);
    for i:=1 to length(s) do
    begin
        if (s[i]>='A')and(s[i]<='Z') then inc(a);
        if (s[i]>='a')and(s[i]<='z') then inc(b);
        if (s[i]>='0')and(s[i]<='9') then inc(c);
    end;
    writeln(a,' ',b,' ',c);
end.

 

 

【方法二】

var
    a,b,c,i:longint;
    s:string;
begin
    readln(s);
    for i:=1 to length(s) do
    begin
        if s[i] in ['A'..'Z'] then inc(a);
        if s[i] in ['a'..'z'] then inc(b);
        if s[i] in ['0'..'9'] then inc(c);
    end;
    writeln(a,' ',b,' ',c);
end.

 

 

------------------------------------------------------------------------------------------------------------------

 

 

------------------------------------------------------------------------------------------------------------------

 

 

 

 

posted @ 2013-03-30 19:09  qilinart  阅读(1297)  评论(0)    收藏  举报