如何统计在一篇文章中某个单词出现了几次,以及第一次出现的位置

这篇文章提供的代码的作用就是对某个单词在文章中出现的次数进行统计。

实现代码:

#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
void main()
{
  freopen("in.txt","r",stdin);
  freopen("out.txt","w",stdout);
  string word,paper;
  getline(cin,word);
  getline(cin,paper);
  short len1=word.size();
  short len2=paper.size();
  short i,sum(0);
  for(i=0;i<=len1-1;i++)
  {
    if(word[i]>=65&&word[i]<=90)
      word[i]+=32;
  }
  for(i=0;i<=len2-len1;i++)
  {
    if(paper[i]>=65&&paper[i]<=90)
      paper[i]+=32;
    if(paper[i]==word[0])
    {
      short j;
      bool bo(1);
      for(j=1;j<=len1-1;j++)
      {
        if(paper[i+j]>=65&&paper[i+j]<=90)
          paper[i+j]+=32;
        if(paper[i+j]!=word[j])
          bo=0;
      }
      if(bo==1)
      {
        sum++;
        if(sum==1)
          cout<<i<<' ';
      }
    }
  }
  cout<<sum<<endl;
  fclose(stdin);
  fclose(stdout);
}

以上就是本文的全部内容,希望对大家的学习有所帮助。

(0)

相关推荐

  • C语言实现统计字符串单词数

    字符串单词数.c #include<stdio.h> #define BUFFERSIZE 1024 int main() { char string[BUFFERSIZE]; int i,count=0,word=0; char c; gets(string) ; for(i=0;(c=string[i])!='\0';i++) { if(c==' ') word=0; else if(word==0) { word=1; count++; } } printf("%d \n&qu

  • python统计文本字符串里单词出现频率的方法

    本文实例讲述了python统计文本字符串里单词出现频率的方法.分享给大家供大家参考.具体实现方法如下: # word frequency in a text # tested with Python24 vegaseat 25aug2005 # Chinese wisdom ... str1 = """Man who run in front of car, get tired. Man who run behind car, get exhausted."&quo

  • Python实现统计单词出现的个数

    最近在看python脚本语言,脚本语言是一种解释性的语言,不需要编译,可以直接用,由解释器来负责解释.python语言很强大,而且写起来很简洁.下面的一个例子就是用python统计单词出现的个数. import sys import string #import collections if len(sys.argv) == 1 or sys.argv[1] in {"-h", "--help"}: print("usage: uniqueword fil

  • c#英文单词分类统计示例分享

    复制代码 代码如下: using System;using System.Linq;namespace ConsoleApplication1{    /// <summary>    /// 给出一段英文,分类统计(如:长度为4的单词有2个:time,well)    /// </summary>    class Program    {        static void Main(string[] args)        {            string sour

  • 如何统计在一篇文章中某个单词出现了几次,以及第一次出现的位置

    这篇文章提供的代码的作用就是对某个单词在文章中出现的次数进行统计. 实现代码: #include<iostream> #include<string> #include<cstdio> using namespace std; void main() { freopen("in.txt","r",stdin); freopen("out.txt","w",stdout); string wo

  • java识别一篇文章中某单词出现个数的方法

    本文实例讲述了java识别一篇文章中某单词出现个数的方法.分享给大家供大家参考.具体如下: 1. java代码: import java.io.DataInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.StringTokenizer; import java.util.regex.Matche

  • 一篇文章入门Python生态系统(Python新手入门指导)

    译者按:原文写于2011年末,虽然文中关于Python 3的一些说法可以说已经不成立了,但是作为一篇面向从其他语言转型到Python的程序员来说,本文对Python的生态系统还是做了较为全面的介绍.文中提到了一些第三方库,但是Python社区中强大的第三方库并不止这些,欢迎各位Pytonistas补充. •原文链接:http://mirnazim.org/writings/python-ecosystem-introduction/ •译文链接:http://codingpy.com/artic

  • 一篇文章带你入门Springboot沙箱环境支付宝支付(附源码)

    目录 0.前言 1.效果展示 2.技术栈介绍 3.前期准备 第一步:申请一个沙箱测试账号 第二步:电脑下载一个支付宝提供的客户端用于生成RSA2 第三步:手机下载 [沙箱版支付宝] 4.后端搭建 项目目录结构 pom.xml application.yml application-alipay.proerties Order订单实体类 Service层 Controller层 配置类 跨域拦截器配置以及注册 启动spirngboot项目 支付操作的页面: 支付完成后支付宝回调的页面: 启动前端项

  • 一篇文章轻松搞懂Java中的自旋锁

    前言 锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等等 ) .这些已经写好提供的锁为我们开发提供了便利. 在之前的文章<一文彻底搞懂面试中常问的各种"锁" >中介绍了Java中的各种"锁",可能对于不是很了解这些概念的同学来说会觉得有点绕,所以我决定拆分出来,逐步详细的介绍一下这些锁的来龙去脉,那么这篇文章就先来会一会"自旋锁". 正文 出现原因 在我们的

  • 一篇文章带你搞定SpringBoot中的热部署devtools方法

    一.前期配置 创建项目时,需要加入 DevTools 依赖 二.测试使用 (1)建立 HelloController @RestController public class HelloController { @GetMapping("/hello") public String hello(){ return "hello devtools"; } } 对其进行修改:然后不用重新运行,重新构建即可:只加载变化的类 三.热部署的原理 Spring Boot 中热部

  • 一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃

    由于 Ubuntu 中的汉字输入实在是太不友好了,所以装了个 搜狗输入法,好不容易把 搜狗输入法装好,本以为可以开开心心的搞代码了,然而... pycharm 一打开,就崩溃,关不掉,进程杀死还是不行,只能关机重启. 本以为 pycharm 出现了问题,又重装了两遍,还是不行. 最终发现竟然是搜狗输入法以及 fcitx 输入法的锅 唉,只能老老实实的把 fctix 和搜狗输入法卸载了: (1)Ubuntu 软件里卸载 fctix,然后将键盘输入法系统改成 IBus (2)卸载搜狗输入法 先查找软

  • 一篇文章带你了解Java中ThreadPool线程池

    目录 ThreadPool 线程池的优势 线程池的特点 1 线程池的方法 (1) newFixedThreadPool (2) newSingleThreadExecutor (3) newScheduledThreadPool (4) newCachedThreadPool 2 线程池底层原理 3 线程池策略及分析 拒绝策略 如何设置maximumPoolSize大小 ThreadPool 线程池的优势 线程池做的工作主要是控制运行的线程数量,处理过程中将任务放入队列,然后在线程创建后启动这些

  • 一篇文章学会GO语言中的变量

    目录 1.标识符 2.关键字 3.变量 3.1 Go语言中变量的声明 3.2 批量声明 3.3 变量的初始化 3.4 短变量声明 3.5匿名变量 4.常量 5.iota 总结 1.标识符 在编程语言中标识符就是程序员定义的具有特殊意义的词,比如变量名,常量名,函数 .bc,_123,a1232 2.关键字 关键字是指编程语言中预先定义好的具有特殊含义的标识符,关键字和保留字都不建议用作变量名 Go语言中有25个关键字 break        default      func        

  • 一篇文章搞懂Vue3中如何使用ref获取元素节点

    目录 前言 1.回顾 Vue2 中的 ref 2.Vue3 中 ref 访问元素 3.v-for 中使用 ref 4.ref 绑定函数 5.组件上使用 ref 总结 前言 虽然在 Vue 中不提倡我们直接操作 DOM,毕竟 Vue 的理念是以数据驱动视图.但是在实际情况中,我们有很多需求都是需要直接操作 DOM 节点的,这个时候 Vue 提供了一种方式让我们可以获取 DOM 节点:ref 属性.ref 属性是 Vue2 和 Vue3 中都有的,但是使用方式却不大一样,这也导致了很多从 Vue2

随机推荐