使用c++实现:一个字符串,只有b和w,统计连续的b和w的个数
时间: 2023-03-24 12:04:23 浏览: 106
你好,这是一个关于字符串处理的问题。可以使用 C 语言中的循环和条件语句来实现。具体实现方法如下:
1. 定义一个字符串变量,用于存储输入的字符串。
2. 定义两个计数器变量,分别用于统计连续的 b 和 w 的个数。
3. 使用循环遍历字符串中的每个字符,判断当前字符是否与前一个字符相同。
4. 如果相同,则将对应计数器加 1;如果不同,则输出当前计数器的值,并将对应计数器重置为 1。
5. 最后输出连续的 b 和 w 的个数即可。
以下是示例代码:
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int b_count = , w_count = ;
int len, i;
printf("请输入一个只包含 b 和 w 的字符串:");
scanf("%s", str);
len = strlen(str);
for (i = ; i < len; i++) {
if (i == || str[i] == str[i-1]) {
if (str[i] == 'b') {
b_count++;
} else {
w_count++;
}
} else {
printf("%d个%c,", (str[i-1] == 'b' ? b_count : w_count), str[i-1]);
b_count = (str[i] == 'b' ? 1 : );
w_count = (str[i] == 'w' ? 1 : );
}
}
printf("%d个%c。\n", (str[len-1] == 'b' ? b_count : w_count), str[len-1]);
return ;
}