我正在尝试打印数组a []的两个连续元素的和,但是输出总是错误的。
我已经尝试调试此问题,但是我无法找出错误。
int main(){
int sum = 0, flag = 0, a[7];
string tag;
cin >> tag;
if(tag.length() > 9) cout << "invalid\n";
else
{
for(int i = 0; i < tag.length(); i++){
if(tag[i] == 0 or tag[6] != 45 or tag[2] < 65 or tag[2] > 90 or isVowel(tag[2]) == 1) cout << "invalid\n";
else if(i == 2 or i == 6) continue;
else a[i] = tag[i]; // Here I have copied the numbers from the string "tag" to the array a[]
}
for(int j = 0; j < 6; j++){
sum = a[j] + a[j+1]; // <<---- *This is the point of problem*
cout << sum << endl;
}
return 0;
}
对于输入字符串21G356-89,我希望输出如下: 3 4 8 11 14 17 但是收到的输出如下: 99 49 51 104 107 54