(超简单思路)U - C语言实验——单词统计
思路:根据变换来判断是否是一个单词,如果当前字符是字母下一个是空格,那么这就是一个单词,或者当前是空格下一个是字母,也是一个单词。
输入的字符串有三种情况:
①句子最前面有空格
②句子最前最后都没有空格
③句子最后有空格
对于当前字符是字母下一个是空格来统计,对于测试点来说,需要分两种情况讨论,结尾是否有空格
对于当前是空格下一个是单词,只需要分两种情况讨论,开头是否有空格
Description
从键盘输入一行字符(长度小于100),统计其中单词的个数,各单词以空格分隔,且空格数可以是多个。
Input
输入只有一行句子。仅有空格和英文字母构成。
Output
单词的个数。
Sample
Input
stable marriage problem Consists of Matching members
Output
7
讨论最前面的情况
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cstdio>
using namespace std;
char a[101];
int cnt,n;
int main()
{cin.getline(a,101);n=strlen(a);for(int i=0; i<n-1; i++)//i不能指到最后一个字符{if(a[i]==' '&&a[i+1]!=' ')//如果前一个字符是空格,下一个字符不是那么单词数+1.{cnt++;}}if(a[0]==' ')//开头是空格,直接输出即可{printf("%d\n",cnt);}else{printf("%d\n",cnt+1);//开头不是空格,漏掉了第一个单词,所以+1}return 0;
}
或者讨论最后
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
#include <stdio.h>
using namespace std;
char str[101];
int main()
{int cnt=0,i;cin.getline(str,102);for(i=0; str[i]!='\0'; i++){if(str[i]!=' '&&str[i+1]==' '){cnt++;}}if(str[i-1]==' '){printf("%d\n",cnt);}else{printf("%d\n",cnt+1);}return 0;
}
(超简单思路)U - C语言实验——单词统计相关推荐
- c语言字符统计2sdut,C语言实验——单词统计(字符串) SDUT
C语言实验--单词统计 Problem Description 从键盘输入一行字符(长度小于100),统计其中单词的个数,各单词以空格分隔,且空格数可以是多个. Input 输入只有一行句子.仅有空格 ...
- [YTU]_2002(C语言实验——单词统计)
Description 从键盘输入一行字符,统计其中单词的个数,各单词以空格分隔,且空格数可以是多个. Input 输入只有一行句子.仅有空格和英文字母构成. Output 单词的个数. Sample ...
- 超简单的用C语言实现定时关闭计算机
超简单的用C语言实现定时关闭计算机 当有需要定时关闭计算机时,很多人会想到借用定时关机工具来定时,其实想要定时关机的方法很多,下面介绍两种高级点的方法 1.Windows PowerShell命令实现 ...
- C语言怎么实现单词下落,如何用c语言实现单词统计
如何用c语言实现单词统计 输入一串字符串,输出其中有多少个单词. 代码如下:#include #include #define SIZE 20 int main(){ char str[SIZE]={ ...
- 超简单集成ML kit 实现听写单词播报
背景 相信我们大家在刚开始学习一门语言的时候都有过听写,现在的小学生学语文的时候一项重要的课后作业就是听写课文中的生词,很多家长们都有这方面的经历.不过一方面这种读单词的动作相对简单,另一方面家长 ...
- 单词统计 SDUT
C语言实验--单词统计 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 从键盘输入一行 ...
- c语言简单密码字符a用f代替,c语言实验.doc
c语言实验.doc 实验1 熟悉C语言的运行环境[实验目的]1. 熟悉C语言编程环境VC 6.0,掌握运行一个C程序的基本步骤,包括编辑.编译.连接和运行.2. 了解C程序的基本框架,能够编写简单的C ...
- win的反义词_100个超简单的英语单词反义词,你必须知道(下)
100个超简单英语单词的反义词(下) 51. forget 忘记 -- remember 记得 52. freeze冰冻 -- melt融化 53. from 从-- -- to 到-- 54. gi ...
- C语言超简单入门——基础知识
C语言超简单入门--基础知识 一.进制转换 进制:二进制.八进制.十进制.十六进制 进制的脚标: 二进制:B 如:101B 八进制:Q 如:12Q 十进制:D 如:10D 十六进制: H 如:123H ...
最新文章
- 关于数据中台的深度思考与总结(超级干货)
- linux下载哪个python版本-修改linux下python的默认版本
- 区块链研习 | 什么是区块链的链外交易和链内交易
- Python之pyecharts:利用pyecharts绘制2020年11月16日微博话题热度排行榜实时变化
- NHibernate使用--环境搭建
- 计算机快捷键屏幕录制,电脑录屏快捷键是哪个(电脑录屏的方法有4种)
- linux耳机的检测原理,耳机检测原理介绍
- 超市管理系统数据库设计
- pyserial模块读取串口数据
- 基于Cisco Packet Tracer的中小型网吧组网设计方案
- php控制梯形图,plc控制交通灯梯形图设计实例论文
- Homography 估计单应性矩阵代码实现
- 国际电话区号--各国或地区电话国际区号对照表
- 【论文解读】手术机器人系统的工作原理分析与解读
- 10组团队项目-Alpha冲刺-1/6
- ZEMAX | 如何编写 ZPL 宏:计算环带垂轴色差
- c语言取变量数据类型,C语言数据类型和变量
- MoveIT-Noetic Assistant 总结
- 军武科技获5000万元B轮融资 男性用户占比达到90%以上
- 腾讯副总裁吴军答腾讯的“抄袭与创…