每日一题——第一百一十一题

题目:统计在字符串中出现的单词的个数

c 复制代码
#include<stdio.h>
#include<stdbool.h>
#include<string.h>

int FindWordInStr(char* arr) {
	bool inWord = false, lastInWord = false;
	int count = 0, len = strlen(arr);
	for (int i = 0; i < len; i++) {

		if (arr[i] != ' ') {
			inWord = true;
			lastInWord = true;
			
		}
		else { //当前字符为空字符
			//首先判断之前是否在一个单词中,如果在,让单词数+1
			if (lastInWord) {
				count++;
				lastInWord = false;//将状态复位
			}
			else {//之前不在一个单词中
				inWord = false;//不在单词状态置为true
			}
			
		}
		
	}

	// 检查字符串末尾是否在一个单词中(检查最后一个字符是否为非空字符)  
	if (lastInWord && arr[len - 1] != ' ') {
		count++;
	}

	return count;
}
相关推荐
luj_176839 分钟前
虚实交融中的真实人物塑造
c语言·开发语言·网络·经验分享·算法
AC赳赳老秦1 小时前
农产品公开数据应用:OpenClaw 抓取农产品价格、产销公开数据,实现农产品行情动态监测
java·c语言·javascript·python·php·deepseek·openclaw
hope_wisdom2 小时前
C/C++数据结构之二叉树的遍历
c语言·数据结构·c++·二叉树·深度优先·广度优先
一木 之林3 小时前
五、C++ 新特性、关键字与编译原理(进阶)(一)
c语言·开发语言·c++
是隼人4 小时前
buuctf-pwn wustctf2020_closed(文件描述符)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
是隼人5 小时前
buuctf-pwn wdb_2018_3rd_soEasy(ret2shellcode)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
热心网友俣先生1 天前
2026国赛C题:五年命题规律与预测
java·c语言·前端·数学建模
wuminyu1 天前
Linux内核线程调度与虚拟线程调度机制系统级深度剖析
java·linux·c语言·jvm·c++
ysu_03141 天前
03-双链表与循环链表
c语言·数据结构·链表
是隼人1 天前
buuctf-pwn pwnable_start(ret2shellcode)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门