0

它总是出现 0 和 0,我只是想计算用户给出的字符串中的 Gs 和 Cs(以及非 Gs 和 Cs)。我知道这是一个初学者问题,对此感到抱歉:(

#include <iostream>
#include <string>
using namespace std;

int main()
{

int x = 0
int y = 0

string s;

cout << "Enter a sequence" << endl;
cin >> s;

for (int i = 0; i > 100; i++)
    if (s[i] == 'g' || s[i] == 'c')
        x += 1;
    else
        y += 1;

cout << x << endl;
cout << y << endl;

}
4

3 回答 3

1

你确实意识到

for (int i = 0; i > 100; i++)

从不跑,对吧?

你是在说 - “让i......0只要i > 100(大声笑 - 从不)做某事”。

你可能是说

for (int i = 0; i < s.size(); i++)

或者你可以使用std::count_if.

于 2012-11-29T01:05:08.887 回答
1

for (int i = 0; i > 100; i++)

由于 0 不大于 100,因此该循环执行零次。

于 2012-11-29T01:05:15.930 回答
0

在循环中,它应该i < 100

于 2012-11-29T01:06:33.427 回答