【题目】输入一段文章(255个字符以内),求文章中单词的个数,相同单词只记一次,The 和 the 视作相同。

【敲代码】
  1. //网友代码
    var
    article,w:string;
    arr:array[..] of string;
    i,len,ans:longint;
    function check(w:string):boolean;
    var
    i:longint;
    begin
    if len= then exit(true);
    for i:= to len do
    if arr[i]=w then exit(false);
    exit(true);
    end;
    begin
    readln(article);
    article:=upcase(article);//将所有字符转换为大写,解决 the=The 问题
    while(article[]<'A')or(article[]>'Z')do
    delete(article,,);
    while length(article)>0do
    begin
    i:=;
    while(article[i]>='A')and(article[i]<='Z')do
    inc(i);
    w:=copy(article,,i-);
    delete(article,,i);
    if check(w) then
    begin
    inc(len);
    arr[len]:=w;
    inc(ans);
    end;
    while(article[]<'A')or(article[]>'Z')do
    delete(article,,);
    end;
    writeln(ans);
    end.

    下面是我对这道题的解决办法,只提供一些步骤:

  1. //空格分隔单词,每一个单词分别读入 string 数组中
    i:=;
    j:=;
    read(a[]);//读入第一个字符
    while a[i]<>'.'do;//a数组为char型
    begin
    inc(i);
    read(a[i]);
    end;
    t:=i;//a数组中内容个数
    for i:= to t do
    if(a[i]<>' ')and(a[i]<>'.') then sen[j]:=sen[j]+a[i]
    else inc[j];//空格分隔处理
    j:=j-;//在最后一个'.'后j会+1,但并没有存放数据,所以这里要减去1
    //去重复
    n:=j;//下面要用j做循环,所以把j保存在n中
    count:=j;//count是最后要输出的结果
    for i:= to n-1do
    for j:=i+ to n do
    if(a[i]=a[j])and(i<>j) then dec(count);//去除重复

Pascal 语言中字符与字符串的更多相关文章

  1. C语言中字符型和字符串型的区别?

    C语言中只有字符型类型,没有字符串型类型.字符类型用一个带符号的8位二进制编码表示,其性质与int相同,只是只有一个字节.表示字符的ASCII编码使用其中的0~127,所以要明白字符类型(char)其 ...

  2. C语言中函数返回字符串的4中方法

    C语言中函数返回字符串的4中方法 函数的构成部分:返回类型.函数名称.参数.函数主体 参数:函数调用时传入的参数称为实参,函数定义时出现的参数为形参 形参的作用在于接收实参传入的值,形参和函数内部的其 ...

  3. c语言中的部分字符串和字符函数

    // // main.c // homeWork1230 // // #include <stdio.h> #include <string.h> #include <c ...

  4. C#中字符和字符串总结

    Char类是C#提供的字符类型,String是C#提供的字符串类型. 字符: Char类在C#中表示一个Unicode字符. Char类只定义一个Unicode字符. Char类常用的方法及说明如下: ...

  5. C语言中字符数据的输入和输出

    字符的输出 C语言中使用putchar函数来输出字符数据 #include <stdio.h> int main() { char a,b,c,d; //定义字符变量a,b,c,d a = ...

  6. C语言之“字符”与“字符串”之间的区别解析

    在C语言中,“字符”与“字符串”之间,是有区别的.这一篇文章中,我们将介绍一下,在C语言中的“字符”与“字符串”,它们之间的区别. 首先,一个很明显的区别是: “字符”,使用单引号作为定界符,而“字符 ...

  7. C语言中常用的字符串处理函数总结

    C语言中字符串处理函数备注 此文仅用于自己研究和记录 字符串处理函数 1. char *gets(char *s); #include<stdio.h> 功能: 从标准输入读入字符,并保存 ...

  8. C语言中常用的字符串操作函数

    程序开头要声明 #include <string.h> 函数名: stpcpy 功 能: 拷贝一个字符串到另一个 用 法: char *stpcpy(char *destin, char ...

  9. C语言中函数返回字符串的四种方法

    在讨论着四种方法之前,首先要对函数有一个简单的认识,无论是在形实结合时,还是在return语句返回时,都有一个拷贝的过程.你传进来的参数是个值,自然函数在工作之前要把这个值拷贝一份供自己使用,你传进来 ...

随机推荐

  1. C#用正则表达式 获取标签的属性或值

    整理两个 在C#中,用正则表达式 获取网页源代码标签的属性或值的方法 : 1.获取标签中的值: string str="<a href=\"www.csdn.net\&quo ...

  2. 数据库 SQL :有关 NULL 值引发 TRUE、FALSE、UNKNOW 三值逻辑

    在 Java.C# 中,相信如果是 boolean 类型值,只有两种选择 true.false.然而,在 SQL 查询中,NULL 值的引入,使得新增了 UNKNOW ,因此,就产生了 TRUE.FA ...

  3. iOS 在任意界面 Dismiss Keyboard

    最近由于项目需要,有些时候我们需要在任意时刻dismiss掉键盘. 很自然的我们会想到键盘通知 UIKeyboardDidShowNotification和UIKeyboardDidHideNotif ...

  4. 【转】网络中的AS自治域

    1. 什么是AS自治域? 全球的互联网被分成很多个AS 自治域,每个国家的运营商.机构.甚至公司等都可以申请AS号码,AS号码是有限的,最大数目是65536.各自分配的IP地址被标清楚属于哪个AS号码 ...

  5. 数据结构复习:交换排序原理及C++实现

    1. 交换排序的基本思想 两两比较key值,如果发生逆序(排列的顺序与期望的顺序相反)就交换,知道所有对象都排序完毕!常见的3种交换排序算法:冒泡排序,shaker排序和快速排序. 2. 冒泡排序 设 ...

  6. DebugView 调试工具

    软件标签: DebugView调试工具 用debugview,打开debugview,运行你的debug版本程序,可以定位到源文件的某一行.在vc源码中需要输出的地方用 OutputDebugStri ...

  7. linux C(hello world)三个数最大和三个数最新

  8. C++红旗之更短形式:500多字符且无法遵守原题规则

    Purpose and Scope 研究五星红旗C++代码生成问题的代码压缩方法. 没有最短,仅仅有更短. 已经尽力了.爱因斯坦的三个小板凳里,我这是第四个. 继续深入压缩代码的方法肯定非常诡异了. ...

  9. [AngularJS] Hijacking Existing HTML Attributes with Angular Directives

    Angular overrides quite a few existing HTML elements and attributes. This can be a useful technique ...

  10. Memcached概述

    Memcached Memcached是一套分布式的内存对象缓存系统,使用C语言编写,作为数据库的前端cache,缓存数据库查询结果能够减轻数据库负载. 类似一张巨大的hash表,缓存的对象以key- ...