zoukankan      html  css  js  c++  java
  • 一篇文章有若干行,以空行作为输入结束的条件。统计一篇文章中单词the(不管大小写,单词the是由空格隔开的)的个数。

    #include <iostream>
    using namespace std;

    int k = 0;
    int n = 0;
    int main() {
      char c;  
      char a[1000];
      do
      {
        cin.get(c);

        if(c>='A'&&c<='Z'){  //将大写转换为小写

          c=c+32;

        }

        a[k++] = c; //把字符放入数组中

      } while (c != ' ');


      k = k - 1; //  k = 有效字符长度
      //cout << k << endl;

      for (int i = 0; i <= k - 1; i++)
      {
        if (a[i] == 't' && a[i+1] == 'h' && a[i+2] == 'e' && a[3] == ' ' && k >= 4 && i == 0) { //如果k大于等于4 判断头三个是否构成单词the
          n++;
        }
        if (i >= 1 && k>=5 && a[i - 1] == ' ' && a[i] == 't' && a[i + 1] == 'h' && a[i + 2] == 'e' && a[i + 3] == ' ') { //如果k大于等于5 并要求 i>=1 出现空格the空格 n++
          n++;
        }
        if (i+2 == k-1 && a[i-1]==' ' && a[i] == 't' && a[i + 1] == 'h' && a[i + 2] == 'e') { //当i执行到倒数第三个 判断最后三个字母是否构成the
          n++;
        }
        if (k == 3 && a[i] == 't' && a[i+1] == 'h' && a[i+2] == 'e' && i == 0) //如果k==3 看这个三个字母是否构成the
        {
          n++;
        }
      }

    cout << n;
    }

  • 相关阅读:
    ASP.Net Core -- 模型验证
    C# -- nameof什么意思?
    C# -- value是什么意思?
    C# -- 异常(二)
    C# -- 异常(一)
    C# -- 委托(二)
    C# -- 委托(一)
    ASP.Net Core -- Controller返回View
    ASP.Net Core -- 中间件
    ASP.Net Core -- 服务注册和管道
  • 原文地址:https://www.cnblogs.com/likeghee/p/9960500.html
Copyright © 2011-2022 走看看