#include <stdio.h>

int main() {
    int a;
    scanf_s('%d', &a);
    int arr[99] = { 0 };

    // 跳过换行符和空格字符
    scanf_s(' ');

    for (int b = 0; b < a; b++)
        scanf_s('%c', &arr[b]);

    int cnt = 0;
    for (int i = 0; i < a - 1; i++) {
        if (arr[i] == 'v' && arr[i + 1] == 'k')
            cnt += 1;
    }
    for(int i=0;i<a-1;i++)
        if (arr[i] == arr[i + 1]) {
            cnt += 1;
            break;
        }
    printf('%d', cnt);
    return 0;
}

这段代码实现的功能如下:

  1. 输入数组长度和元素: 首先,代码会读取一个整数 a 作为数组的长度,然后读取 a 个字符并存储到数组 arr 中。
  2. 统计 'vk' 组合出现的次数: 代码使用一个循环遍历数组,并判断每个元素和其后一个元素是否分别为 'v' 和 'k',如果是则计数器 cnt 加一。
  3. 统计相邻重复元素的次数: 代码使用另一个循环遍历数组,判断每个元素和其后一个元素是否相等,如果是则计数器 cnt 加一,并使用 break 语句跳出循环,确保只统计一次。
  4. 输出结果: 最后,代码输出计数器 cnt 的值,即 'vk' 组合和相邻重复元素的总数。

这段代码简洁明了,逻辑清晰,能够有效地统计特定字符组合和相邻重复元素的个数。

C语言数组遍历:统计特定字符组合和相邻重复元素

原文地址: https://www.cveoy.top/t/topic/imm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录