gpt4 book ai didi

c++ - C++字符串程序错误

转载 作者:行者123 更新时间:2023-11-30 05:32:25 25 4
gpt4 key购买 nike

我制作的这个程序让用户输入一个字符串和一个字符,然后显示该字符在字符串中出现的次数。出于某种原因,每次我运行这个程序时,它总是说该字符在字符串中出现 0 次。我需要一些帮助来确定问题并解决问题。谢谢!

#include <cstdlib>
#include <iostream>
#include <string>
#include <cctype>

using namespace std;

int main(int argc, char *argv[])
{
string input;
char character;
int charCount = 0;

cout << "Enter a string:" << endl;
getline(cin, input);
cout << "Enter a character:" << endl;
cin >> character;
int i = input.find(character);
while (i < 0)
{
charCount++;
i = input.find(character, (i + 1));
}
cout << character << " appears in the string, " << input << ", " << charCount << " times." << endl;

system("PAUSE");
return EXIT_SUCCESS;
}

最佳答案

你的问题是循环条件

int i = input.find(character);  // if the character is in the string, it will return a number i > 0
while (i < 0) // will not enter loop
{
charCount++;
i = input.find(character, (i + 1));
}

此外,根据此逻辑,charCount 将随着您在字符串中遇到的每个字符而增加。

关于c++ - C++字符串程序错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35121179/

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