c语言练习50: 字⺟在字符串中的百分⽐

题目:

给你⼀个字符串 s 和⼀个字符 letter ,返回在 s 中等于 letter 字符所占的 百分⽐ ,向下 取整到最接近的百分⽐。

• ⽰例 1: 输⼊:s = foobar, letter = o

输出:33

解释: 等于字⺟ o 的字符在 s 中占到的百分⽐是 2 / 6 * 100% = 33% ,向下取整,所以返回 33 。

算法思路:

  1. 定义⼀个变量 cnt ,并初始化为0;

  2. 遍历字符串数组,当⽬标字符出现时 cnt++ ;

  3. 返回 cnt 与⻓度的百分⽐值。

cpp 复制代码
int  percentageLetter(char* s, char letter) {
	int cnt = 0;
	int len = strlen(s);
	//字符串指针⾸先指向字符串第⼀位(下标为0)字符
    //当字符串指针不指向空时进⼊循环,字符串的最后⼀位必然为空字符('/0')
	while (*s) {
		//如果字符串指针当前指向的字符与⽬标字符相等则记录次数
		if (letter == *s) {
			cnt++;
		}
		//字符串指针指向后⼀位
		s++;
	}
	//题⽬要求返回百分⽐,因此结果需要与100相乘
	return cnt * 100 / len;
} 
相关推荐
Code额11 分钟前
ECMAScript 7~10 新特性
开发语言·javascript·ecmascript
zyx没烦恼17 分钟前
Linux 多线程
linux·运维·服务器·开发语言·c++
似水এ᭄往昔19 分钟前
【C语言】预处理(预编译)(C语言完结篇)
c语言·开发语言
愚润求学29 分钟前
【C++】模板进阶
c语言·开发语言·c++·笔记·模板
天若有情67333 分钟前
【Python】什么是列表推导式?
开发语言·python
xyd陈宇阳44 分钟前
C++ 入门三:函数与模板
开发语言·c++
星之卡比*44 分钟前
前端知识点---闭包(javascript)
开发语言·前端·javascript
oioihoii1 小时前
C++23新特性详解:迈向更现代化的C++
开发语言·c++·c++23
JoshuaGraham1 小时前
Java 并发-newFixedThreadPool
java·开发语言
darkchink2 小时前
[LevelDB]Block系统内幕解析-元数据块(Meta Block)&元数据索引块(MetaIndex Block)&索引块(Index Block)
android·java·服务器·c语言·数据库·c++·分布式