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;
} 
相关推荐
灯厂码农6 分钟前
C语言动态内存分配完全指南(malloc、calloc、realloc、free)
java·c语言·算法
yoothey12 分钟前
报废审批流规则引擎设计——责任链模式完整实现
linux·开发语言·bash
geovindu29 分钟前
python: Functional Options Pattern
开发语言·后端·python·设计模式·惯用法模式·函数式选项模式
wuyk55536 分钟前
24. C 语言模块化:不是拆几个.c 文件那么简单
c语言·开发语言·stm32·单片机
qq_241585611 小时前
可用在中断中浮点数打印类似printf
c语言
凯瑟琳.奥古斯特1 小时前
K次取反最大化数组和解法(力扣1005)
开发语言·c++·算法·leetcode·职场和发展
AC赳赳老秦1 小时前
防火墙规则批量配置实战:OpenClaw 自动生成模板、批量下发与合规性校验全解析
java·开发语言·人工智能·python·github·php·openclaw
☆cwlulu2 小时前
调试排查工具介绍(gdb、strace、Valgrind等)
开发语言·c++·嵌入式硬件·ubuntu
C语言小火车2 小时前
C++ 快速排序(Quick Sort)深度精讲:分治思想、Lomuto 分区法及三数取中优化,面试手撕必会
c语言·开发语言·c++·面试·排序算法·快速排序
sycmancia2 小时前
Qt——多线程间的互斥
开发语言·qt