2012-11-29 49 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