LeeCode 434. 字符串中的单词数

news2025/3/31 21:31:47

统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。

请注意,你可以假定字符串里不包括任何不可打印的字符。

示例:

输入: "Hello, my name is John"
输出: 5
解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。

代码:

int countSegments(char* s) { // LeeCode 434. 字符串中的单词数
	if (s == NULL)
		return 0;
	int len = strlen(s);
	if (len < 1)
		return 0;
	int count = 0;
	for (int i = 0; i < len; i++) {
		if (s[i] != ' ') {
			if (i == len - 1) {
				count++;
			}
			else if (s[i+ 1] == ' ') {
				count++;
			}
		}
	}
	return count;
}

 测试代码:

void testLeeCode434() {
	const char* s = "Hello, my name is John";
	char str[50];
	strcpy_s(str, sizeof(str), s);
	printf("str: %s, countSegments: %d \n", str, countSegments(str));
}

打印:

ok。测试代码中本来是想用strcpy函数拷贝字符串的,但是提示函数不安全,用strcpy_s函数拷贝。后缀为_s的函数应该都是安全函数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2323731.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【AI编程学习之Python】第一天:Python的介绍

Python介绍 简介 Python是一种解释型、面向对象的语言。由吉多范罗苏姆(Guido van Rossum)于1989年发明,1991年正式公布。官网:www.python.org Python单词是"大蟒蛇”的意思。但是龟叔不是喜欢蟒蛇才起这个名字,而是正在追剧:英国电视喜剧片《蒙提派森的飞行马戏团》(Mo…

西域平台商品详情接口设计与实现‌

接口描述&#xff1a; 该接口用于获取西域平台中指定商品的详细信息&#xff0c;包括商品名称、价格、库存、描述、图片等。 点击获取key和secret 接口地址&#xff1a; GET /api/product/detail 请求参数&#xff1a; 参数名 类型 是否必填 描述 productId st…

如何让 history 记录命令执行时间?Linux/macOS 终端时间戳设置指南

引言:你真的会用 history 吗? 有没有遇到过这样的情况:你想回顾某个重要命令的执行记录,却发现 history 只列出了命令序号和内容,根本没有时间戳?这在运维排查、故障分析、甚至审计时都会带来极大的不便。 想象一下,你在服务器上误删了某个文件,但不知道具体是几点执…

04-SpringBoot3入门-配置文件(多环境配置)

1、简介 在 SpringBoot 中&#xff0c;不同的环境&#xff08;如开发、测试、生产&#xff09;可以编写对应的配置文件&#xff0c;例如数据库连接信息、日志级别、缓存配置等。在不同的环境中使用对应的配置文件。 2、配置环境 # 开发环境 zbj:user:username: root # 测试环…

windows第十八章 菜单、工具栏、状态栏

文章目录 创建框架窗口菜单菜单的风格通过资源创建菜单菜单的各种使用通过代码创建菜单在鼠标位置右键弹出菜单 CMenu常用函数介绍工具栏方式一&#xff0c;从资源创建工具栏方式二&#xff0c;代码创建 状态栏状态栏基础创建状态栏 创建框架窗口 手动创建一个空项目&#xff…

EMC电源端传导干扰预测试

本实验需要在微波暗室里面进行&#xff0c;隔离外界干扰。 1.EMI接收机和人工电源网络的电源线都插在隔离变压器上面&#xff0c;隔离变压器的电源插在AC220上面 2.被测设备EUT的电源线接在人工电源网络上&#xff1a; 人工电源网络的信号输出端连接EMI接收机。 EMI接收机前面…

94二叉树中序遍历解题记录

怎么说呢&#xff0c;以为这道题不用记录了&#xff0c;菜得吓到了自己。起因是这个遍历的递归一般是写两个函数完成&#xff0c;如下&#xff1a; func inorder(root *TreeNode, res *[]int) {if root nil {return}inorder(root.Left, res)*res append(*res, root.Val) // …

java项目之基于ssm的亚盛汽车配件销售业绩管理系统(源码+文档)

项目简介 亚盛汽车配件销售业绩管理系统实现了以下功能&#xff1a; 亚盛汽车配件销售业绩管理系统根据调研&#xff0c;确定管理员管理客户&#xff0c;供应商&#xff0c;员工&#xff0c;管理配件和配件的进货以及出售信息。员工只能管理配件和配件的出售以及进货信息&…

Spring Initializr搭建spring boot项目

介绍 Spring Initializr 是一个用于快速生成 Spring Boot 项目结构的工具。它为开发者提供了一种便捷的方式&#xff0c;可以从预先定义的模板中创建一个新的 Spring Boot 应用程序&#xff0c;从而节省了从头开始设置项目的大量时间。 使用 Spring Initializr&#xff0c;你…

第十二章:补充介绍pip与配置及Python结构层次

一、pip介绍pip介绍与配置及Python结构层次 1. pip是什么 pip 是 Python 的一个包管理工具&#xff0c;它允许你安装和管理 Python 库和依赖项。简单来说&#xff0c;pip 就是一个工具&#xff0c;它可以帮助你轻松地安装、更新、卸载 Python 的各种库。 2. pip属于什么层次的…

kotlin,jetpack compose 最简导航(navigation)案例学习

// 添加导航组件依赖&#xff0c;用于支持Compose中的导航功能 implementation ("androidx.navigation:navigation-compose:2.8.9") // 定义包名 package com.example.mynavigation// 导入所需的Android和Compose库 import android.os.Bundle import androidx.activ…

centos 7 LVM管理命令

物理卷&#xff08;PV&#xff09;管理命令 pvcreate&#xff1a;用于将物理磁盘分区或整个磁盘创建为物理卷。 示例&#xff1a;sudo pvcreate /dev/sdb1 解释&#xff1a;将 /dev/sdb1 分区创建为物理卷。 pvdisplay&#xff1a;显示物理卷的详细信息&#xff0c;如大小、所属…

鸿蒙前后端项目源码-点餐v3.0-原创!原创!原创!

鸿蒙前后端点餐项目源码含文档ArkTS语言. 原创作品.我半个月写的原创作品&#xff0c;请尊重原创。 原创作品&#xff0c;盗版必究&#xff01;&#xff01;&#xff01;&#xff01; 原创作品&#xff0c;盗版必究&#xff01;&#xff01;&#xff01;&#xff01; 原创作…

Unity打包崩溃SRP-URP-管线的问题:Shader::SRPBatcherInfoSetup()

URP build always crash when Use SPR Batcher is ON by default - Bug Reports - Niantic SDK for Unity Community 有点类似这个情况&#xff0c;暂时没有解决方法 *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** Build fingerprint: google/bluejay/blu…

不落因果与不昧因果

在佛教浩瀚的哲学体系中&#xff0c;“因果”是贯穿修行始终的核心命题。而“不落因果”与“不昧因果”这对看似矛盾的概念&#xff0c;恰似明镜的两面&#xff0c;映照出修行者对因果法则的不同认知层次。二者虽仅一字之差&#xff0c;却如天堑般分隔了迷悟两岸&#xff0c;其…

<tauri><rust><GUI>基于rust和tauri,实现一个大寰电爪PGHL(串口设备)定制化控制程序

前言 本文是基于rust和tauri,由于tauri是前、后端结合的GUI框架,既可以直接生成包含前端代码的文件,也可以在已有的前端项目上集成tauri框架,将前端页面化为桌面GUI。 环境配置 系统:windows 10平台:visual studio code语言:rust、javascript库:tauri2.0概述 本文是…

浅谈工商企业用电管理的分布式储能设计

摘要&#xff1a;文章设计了一种新的用于工商业用电管理的分布式储能系统。由于储能系统硬件置换成本高&#xff0c;选择在传统储能系统的硬件框架基础上&#xff0c;对控制软件进行优化设计&#xff0c;建立分布式储能系统模型&#xff0c;分析发电量、储电量及损失电量三者之…

项目代码第10讲【数据库运维知识——如何优化数据库查询效率?】:各种日志查看;主从复制;分库分表(MyCat);读写分离;区别数据分区、分表、分库

01. 运维-课程介绍_哔哩哔哩_bilibili 一、各种日志查看 二、主从复制 三、分库分表&#xff08;MyCat&#xff09; 四、读写分离 五、区别数据分区、分表、分库 1、数据库分区 上图中的ibd文件&#xff0c;是分区表的数据文件&#xff0c;可以分布在不同的物理设备上&…

H5DS编辑器教程——H5页面触发动画实战指南

在 H5 页面设计中&#xff0c;触发动画通过动态交互提升用户体验&#xff0c;成为吸引注意力的关键手段。H5DS 编辑器作为一款高效的可视化工具&#xff0c;提供了丰富的动画制作功能&#xff0c;即使是零基础用户也能轻松实现专业级效果。 使用工具&#xff1a;H5DS编辑器 触…

小程序语音识别功能 wx.createInnerAudioContext

页面样式htmlcss <view class"recorder_content"><view class"result_content"><view class"r_title">语音识别结果显示:</view><view class"r_h_input"><text wx:if"{{resultDetails.result}…