没有获得所需的输出 C++

Not obtaining desired output C++

实际上我正在研究三元组代码。问题陈述如下: 任务是通过比较a[0]和b[0]、a[1]和b[1]、a[2]和b[2]来找到它们的比较点。

If a[i] > b[i],则爱丽丝获得1分。 If a[i] < b[i],则 Bob 获得 1 分。 If a[i] = b[i],则双方均不得分。 比较点是一个人获得的总点数。 结果必须是二值数组。 该代码对我来说似乎正确且很好,但我没有得到所需的正确输出。 有人请帮忙。 我写的代码如下:

#include <bits/stdc++.h>
#include <iostream>
using namespace std;

int main(){
    int a[3];
    int b[3];
    int r[2] = {r[0],r[1]};
    r[0]=0;
    r[1]=0;
    cin>>a[3]>>b[3];
    for(int i=0;i<3;i++){
            if(a[i] >b[i]){
                r[0]=r[0]+1;
            }else if(b[i]>a[i]){
                r[1] = r[1]+1;

            }else{
                r[0]=r[0]+0;
                r[1]=r[1]+0;
            }
        }
    cout<<r[0]<<" "<<r[1];
}

这道题的解法很简单。首先,您需要使用循环获取数组值。然后比较它们。 http://cpp.sh/3kk5f

// Example program
#include <iostream>
using namespace std;

int main()
{
    int a[3],b[3],r[2]={};

    for(int i=0;i<3;i++) cin>>a[i];
    for(int i=0;i<3;i++) cin>>b[i];
    
    for(int i=0;i<3;i++){
     if(a[i] > b[i])   r[0]++;
     else if(b[i]>a[i]) r[1]++;
    }
    
    cout<<r[0]<<" "<<r[1]<<endl;
  
}

输入:

1 2 3
1 4 5

输出:

0 2