C语言统计一个字符串中单词的个数「建议收藏」

C语言统计一个字符串中单词的个数

大家好,又见面了,我是全栈君。

假定每一个单词用空格隔开。

样例:

输入:how are you!

输出:3

两种方法:


一:

#include <stdio.h>
#include <string.h>

#define SIZE 20

int main()
{
	char str[SIZE]={'\0'};
	int count=0;
	printf("please input the string\n");
	gets(str);
	puts(str);
	int length = strlen(str);
	for (int i=0;i<length;i++)
	{
		//推断是不是空格不是的话在while里面i++运行推断到下一个空格的出现或是结束
		if(str[i]!=' ')
		{
			count++;
			while(str[i]!=' '&&str[i]!='\0')
			{
				i++;
			}
		}
	}
	printf("%d\n",count);
	return 0;

}

另外一种:

#include <stdio.h>
#include <string.h>

#define SIZE 20

int main()
{
	char str[SIZE]={'\0'};
	int count=0;
	int flag=0;
	printf("please input the string\n");
	gets(str);
	puts(str);
	int length = strlen(str);
	for (int i=0;i<length;i++)
	{
		//推断是不是空格。是的话flag=0,
		//不是的话推断前面是不是空格即flag是否等于0。
		//是空格的话说明是新单词的開始
		if(str[i]==' ')
		{
			flag=0;
		}
		else
		{
			if(flag==0)
			{
				count++;
				flag=1;
			}
		}
	}
	printf("%d\n",count);
	return 0;

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115386.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VBoxManage常用命令「建议收藏」

    VBoxManage常用命令「建议收藏」目录0x01常用命令0x02全部参数0x01常用命令#列出全部虚拟机VBoxManagelistvms#列出全部运行中的虚拟机VBoxManagelistrunningvms#列出虚拟机信息VBoxManageshowvminfouuid|vmname#开启虚拟机VBoxManagestartvmuuid|vmname#…

    2022年4月29日
    132
  • Jenkins(8)构建触发器之定时构建和轮询 SCM「建议收藏」

    Jenkins(8)构建触发器之定时构建和轮询 SCM「建议收藏」前言跑自动化用例每次用手工点击jenkins出发自动化用例太麻烦了,我们希望能每天固定时间跑,这样就不用管了,坐等收测试报告结果就行。jenkins的定时任务是用的crontab语法定时构建语法

    2022年7月31日
    7
  • CMS-CMS框架解析[通俗易懂]

    CMS-CMS框架解析[通俗易懂]    今天第一次接触到CMS的项目,当时是修改一个别人项目的BUG,说实话,我开始并不了解这是一个开源框架,我开始以为是一个别人字节写的自用框架,而非公共的开源框架。其实本人也写过微框架,本次就借助CMS来谈谈框架的思想。 框架的本质   框架的本质,自我理解就是从URL输入到数据处理到数据输出的过程,如果输出的是页面HTML则是传统的MVC模式,如果输出的是JSON的数据集…

    2022年5月25日
    30
  • java版我的世界下载_我的世界java版

    java版我的世界下载_我的世界java版我的世界java版这个所谓的java版可能大家不是很熟悉,java版就是《我的世界》是整个游戏的初始版本,目前Java版本是全平台游戏版本中内容最多,更新速度最快的版本。此外,Java版本拥有大规模的全球玩家社区,得益于它可拓展的特性,拥有百万件玩家创意作品,这些都使得Java版本是核心玩家最喜爱的版本之一。我的世界java版手机版种子:出生点前有丛林神庙的地图种子在这个种子地图上,你会出生在一座…

    2022年7月8日
    35
  • linux网络发包工具_web抓包工具

    linux网络发包工具_web抓包工具如果想做模仿网络攻击的测试,选择高速小包发送工具,最好还是可以指定协议的。当然,我们研究这些可不是打算用来攻击他人的机器,搞网络破坏的,而是用来通过该方法测试收数据体验一下被攻击的感觉,哈哈,也顺便衡量一下机器的性能。这方面smartbit测试仪可以完全可以满足。可惜啊,一台都得好几十万,对于大多数人来说都不太划算。那么还有没有软件的发包工具可以实现高速按指定协议发送数据包啊?!有。还是要归功于l

    2025年8月27日
    4
  • Linux 连接memcache 拒绝连接,防火墙关闭,selinux disabled 仍然不行,最后在外站找到原因,为服务器添加memcache访问权限…[通俗易懂]

    Linux 连接memcache 拒绝连接,防火墙关闭,selinux disabled 仍然不行,最后在外站找到原因,为服务器添加memcache访问权限…

    2022年2月8日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号