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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Tomcat server missing

    Tomcat server missingTomcat server missing

    2022年4月24日
    41
  • sm4算法加密解密

    sm4算法加密解密一、基本知识分组加密(英语:Blockcipher),又称分块加密或块密码,是一种对称密钥算法。它将明文分成多个等长的模块(block),使用确定的算法和对称密钥对每组分别加密解密。 对称加密、加密算法主要可以分为两种,一个是非对称加密算法,另一个就是对称加密算法。对称加密简单来说就是有一个明文,通过一个密钥加密之后得到一个密文,这个密文可以通过相同的密要解密得出和原来相同的明文二、sm…

    2022年10月6日
    2
  • Automation服务器不能创建对象(金税盘)

    Automation服务器不能创建对象(金税盘)  1.安装防伪开票组件接口软件;  2.把接口的注册文件放到%防伪开票系统的安装目录%\BIN下  3.把%防伪开票系统的安装目录%\bin下的TaxCardX.dll文件复制至c:\windows\system32下  4.注册dll:在开始菜单中选择”运行”,输入”regsvr32TaxCardX.dll”5.  备注:此处电脑可能会提示不兼容,如:  …

    2022年6月1日
    32
  • 漏洞挖掘——实验11 侧信道攻击+TCP/IP实验

    漏洞挖掘——实验11 侧信道攻击+TCP/IP实验题目Lab侧信道攻击+TCP/IP实验Pre1、用IE访问某些网站的时候,输入javascript:alert(document.cookie)会有什么反应,解释原因。2、阅读下面两篇文章或者阅读一本书<<JavaScriptDOM编程艺术>>:JavascriptTutorialhttps://www.evl.uic.edu/luc/bv…

    2022年7月15日
    19
  • js数组添加删除数据_如何删除数组中的元素

    js数组添加删除数据_如何删除数组中的元素文章目录添加删除数组元素的方法添加删除数组元素的方法<script>//添加删除数组元素的方法//1.push()在我们数组的末尾添加一个或者多个数组元素vararr=[1,2,3];//arr.push(4,’Argonaut’)console.log(arr);console.log(arr.push(4,’Argonaut’));//

    2022年9月27日
    3
  • startActivityForResult被标记为弃用后,如何优雅的启动Activity?

    startActivityForResult被标记为弃用后,如何优雅的启动Activity?startActivityForResult标记为弃用后,如何优雅的启动Activity?ActivityResultAPI已经出来有一段时间了,但是还是有很多朋友对这个API感到使用不便或疑惑,今天尽量用一篇简短的文章简述下registerForActivityResult的使用方法。

    2022年7月11日
    16

发表回复

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

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