我试图在用户输入中出现alphabet[0]字母时递增一个array()索引'a',但是当我打印出来时,alphabet[0]我收到了错误的输出.
示例问题:
"Enter a string"
adam //input
2665453 //printed on screen
2665453
2665453
2665453
2665453
Run Code Online (Sandbox Code Playgroud)
我试图实现的输出应该是数字2,对于adam中的2'a.
这是我的代码:
class Counter {
public:
string input; //the string used for user input
int alphabet[26];
int numbers[10];
void countcharacters();
void countnumbers();
private:
};
void Counter::countcharacters() {
cout << "Enter a string" <<endl;
getline(cin, input);
for(int i=0; i<input.length(); i++) {
if(input.at(i) == 'a'){
alphabet[0]++;
}
cout << alphabet[0] << endl;
}
}
Run Code Online (Sandbox Code Playgroud) 我已经尝试过搜索可以实现此目的的算法,但没有得出任何结果.
我有构造函数Date2013(int dd).
在这个成员函数中,我创建了一个包含月份的数组(1月,2月等)
然后我创建了一个if语句,它接受dd,如果dd落在第1天-31之间,然后输出1月,如果它落在32-59之间,则输出2月.
我正在做的事情是,然后将他们输入的数字,dd,并将其转换为该月的适当日期.即(一年的第34天是2月2日).
有谁知道任何算法或知道我可以实现这一点的方式?
(我刚刚开始学习我的C++,所以任何代码中的解释或注释都会非常有用,这样我才能理解你的思维过程和语法)