gpt4 book ai didi

c - 显示该程序中相邻对的总数

转载 作者:行者123 更新时间:2023-11-30 21:42:13 24 4
gpt4 key购买 nike

给定输入 char[]我想找到字符串中离散对的数量。因此对于输入:

  • "dddd"输出是 2 对
  • "ddd"输出为 1 对
  • "dd"输出为 1 对
  • "d"输出为 0 对

每对中的字符必须相邻。对于输入 "abca"输出仍然是 0,因为 'a' s 不相邻。 *

目标是找到字符串中对的总数。因此对于 "aaxbb" 的输入输出应为 2。*

对于我的输入字符串 char a[] = "dppccddd"有 3 对相邻的字母,但是 my program's output is 4 。我该如何解决这个问题?

int i = 0, count = 0, count1 = 0;

for (i = 0; i <= 6; i++)
{
if (a[i] == a[i + 1])
count++;
}
printf("%d", count);

最佳答案

只是为了让你的代码稍微好一点,使用 for(i = 0; i < sizeof(a) / sizeof(a[0]) - 1; i++) 而不是硬编码值 6获取数组中的多个元素。

你的代码的问题是,如果两个字符匹配,它将再次从第二个字符开始比较,你需要跳过该字符,所以增加 i按 1:

if(a[i] == a[i + 1]) {
++count;
++i;
}

关于c - 显示该程序中相邻对的总数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32692645/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com