2012-11-29 47 views
0

它总是出来0和0,我只是试图计算用户给出的字符串中的Gs和Cs(以及非G和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; 

} 
+0

有一个这样的算法:'std :: count_if'。 – chris

+0

请提供一个输入和输出的例子。 –

+0

@chris哈!不是这次:P –

回答

1

你一定要明白

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

从不运行时,右

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

你可能的意思是

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

或者您可以使用std::count_if

+0

'我 chris

1

对(INT I = 0; I> 100;我++)

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

0

在循环中,它应该是i < 100