zoukankan      html  css  js  c++  java
  • 字符和字符串

    关于字符

    类型名:char
    功能:说明了一个字符数据集合
    范围:Pascal语言的字符集。也就是ASCII字符集
    表示方法:字符类型中的一个元素表示就是用单引號括起来的一个且仅一个字符。

    ‘1’、  ‘A’、  ‘b’
    字符类型是有序类型。能够比較大小。
    字符类型占内存一个字节。

    字符常量的定义:
    const
      字符常量=‘字符’
      字符变量的定义:
    Var
      字符变量:char;


    例题

    模拟一个简单的计算器,即输入两个数和一个算符(加、减、乘、除)。输出运算结果。
    输入:
    12 24
    +
    输出:
    36

    Program exam5_4;

    Var  a,b,c:integer;  

     ch: char;

    begin

      readln(a,b);

     readln(ch);

      case ch of  

       ‘+’: c := a + b;
        ‘-’: c := a - b;  

       ‘*’: c := a * b;

        ‘/’: c := a div b;  

     end;
      writeln(c);

    end.

    字符函数

    字符类型是一个有序类型, 字符的大小顺序按其SCⅡ代码的大小而定。

    函数succ、pred、ord 适用于字符类型。


    比如:
    后继函数:succ(‘a’)=‘b’
    前继函数:pred(‘B’)=‘A’
    序号函数:ord(‘A’)=65
    转字符函数:chr(65)=‘A’

    练习

    按字母表顺序和逆序每隔一个字母打印。即打印出:
    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

    字符串类型

    字符串是由字符组成的有穷序列。
    字符串类型定义:
    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。

    例题

    输入一串字符串,,将当中的小写字母转换为大写字母后输出

    思路:
    1、枚举每一个字符s[i]
    2、推断s[i]是否为小写字母  ‘a’<=s[i]<=‘z’
    3、将s[i]转换为大写字母   S[i]:=chr(ord(s[i])-ord(‘a’)+ord(‘A’));
    4、输出原字符串

    program strtest;
    var
      s:string;
      i:integer;
    begin
      readln(s);
      for i:=1 to ord(s[0]) do
        begin
          if (s[i]>='a') and (s[i]<='z') then
            s[i]:=chr(ord(s[i])-ord('a')+ord('A'));
        end;
      writeln(s);
    end.

    1、输入一串英文,抽取出ASCII值为奇数的英文输出。
    【输入】FreePascal
    【输出】eeasca
    2、分别统计一个字符串中大写字母和小写字母的个数。
    【输入】AaaBBb123CCccccd
    【输出】upper=5 lower=8

    字符串的操作

    1.+:连接运算符
    比如:‘Turbo ’+‘PASCAL’的结果是‘Turbo PASCAL’。若连接的结果字符串长度超过255,则被截成255 个字符。若连接后的字符串存放在定义的字符串变量中,当其长度超过定义的字符串长度时。超过部份字符串被截断。
    比如:
    var
      str1。str2,str3:string[8];
    begin
      str1:=‘Turbo ’;
      str2:=‘PASCAL’;
      str3:=str1+str2;
    end.
    则str3的值为:‘Turbo PA’。

    字符串的比較

    2.=、〈〉、〈、〈=、〉、〉=:关系运算符
    两个字符串的比較规则为。从左到右依照ASCⅡ码值逐个比較,遇到ASCⅡ码不等时,规定ASCⅡ码值大的字符所在的字符串为大。
    比如:
    ‘AB’〈‘AC’ 结果为真。
    ‘12’〈‘2’ 结果为真;
    ‘PASCAL ’=‘PASCAL’ 结果为假;

    练习

    对给定的10个字符串。按其字母的顺序排序输出

    字符串的函数和过程



  • 相关阅读:
    偶串_牛客网
    制造回文_牛客网
    字典树(前缀树)的实现
    动态规划LeetCode174地下城游戏
    动态规划LeetCode64最小路径和
    动态规划LeetCode300最长上升子序列
    动态规划LeetCode120三角形最小路径和
    Zabbix 监控sqlserver
    如何回收VCSA 6自带的vPostgres数据库空间
    领益科技:导出Wireless组中的成员
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5387960.html
Copyright © 2011-2022 走看看