谁先倒,编译错误的原因求解



#include<iostream>
using namespace std;
int main(){
    int i,a,b,N,Ahan[100],Ahua[100],Bhan[100],Bhua[100],sumA=0,sumB=0;
    cin>>a>>b;
    cin>>N;
    for(i=0;i<N;i++){
        cin>>Ahan[i]>>" ">>Ahua[i]>>" ">>Bhan[i]>>" ">>Bhua[i];
    }
    for(i=0;i<N;i++){
        if((Ahua[i]==(Ahan[i]+Bhan[i]))&&(Bhua[i]==(Ahan[i]+Bhan[i])))
            continue;
        if(Ahua[i]==(Ahan[i]+Bhan[i])){
            sumA++;
            a--;
            if(a<0){
                cout<<"A"<<endl;
                cout<<sumB;
             break;
            }
        }
        else if (Bhua[i]==(Ahan[i]+Bhan[i])){
            sumB++;
            b--;
            if(b<0){
                cout<<"B"<<endl;
                cout<<sumA;
             break;
            }
        }
    }
    return 0;
}

img
请问这个代码是哪里有问题导致总是执行错误呢?求解

如果我的回答对你有帮助,请采纳谢谢


#include<iostream>
using namespace std;
int main(){  
  int a,b,n,e,f,g,h,flag,d,l;
  scanf("%d%d%d",&a,&b,&n);
  d = a,l = b;
  while(n--){
    scanf("%d%d%d%d",&e,&f,&g,&h);
    if(f == (e + g) && h != (e + g))
      a--;
    if(f != (e + g) && h == (e + g))
      b--;
    if(a < 0){
      flag = 1;
      break;
    }
    if(b < 0){
      flag = 0;
      break;
    }
  }
  if(flag)
    printf("A\n%d\n",l - b);//!!!!
  else
    printf("B\n%d\n",d - a);//!!!!
  return 0;
}

或者是

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define inf 0x3f3f3f3f
#define mem(a,b) memset(a,b,sizeof(a))
 
int main()
{
    int x,y,n,x1=0,y1=0,a,b,c,d,flag=0;
    cin>>x>>y;
    cin>>n;
    while(n--)
    {
        cin>>a>>b>>c>>d;
        if(flag)
            continue;
        if(a+c==b&&a+c!=d)
            x1++;
        if(a+c!=b&&a+c==d)
            y1++;
        if(x1>x&&!flag)
            flag=1;
        if(y1>y&&!flag)
            flag=2;
    }
    if(flag==1)
        cout<<"A"<<endl<<y1<<endl;
    else
        cout<<"B"<<endl<<x1<<endl; 
    return 0;
}

#include<iostream>
#include<stdio.h>
using namespace std;
 
int main(){
    int count_a,count_b,n;
    int a_call[100],b_call[100],a_sweep[100],b_sweep[100];
    int count,call[100];
    cin>>count_a>>count_b;
    int count_a1 = count_a,count_b1 = count_b;
    cin>>n;
    //cout<<count_a1<<" "<<count_b1<<endl;
    for(int i=0;i<n;i++){
        cin>>a_call[i]>>a_sweep[i]>>b_call[i]>>b_sweep[i];
        call[i] = a_call[i]+b_call[i];
        //cout<<a_sweep[i]<<" "<<b_sweep[i]<<" "<<call[i]<<endl;
    }
    
    for(int i=0;i<n;i++){
        //cout<<i;
        //乙嬴 
        if(a_sweep[i]==call[i] && b_sweep[i]!=call[i]){
            count_a1--;
            
        }
        //甲嬴 
        else if(b_sweep[i]==call[i] && a_sweep[i]!=call[i]){
            count_b1--;
            
        }
        else{
            continue;
        }
        if(count_a1<0){
            printf("A\n");
            printf("%d",count_b - count_b1);
            break;
        }
        if(count_b1<0){
            printf("B\n");
            printf("%d",count_a - count_a1);
            break;
        }
        
    }
        
    return 0;
}

C++ cin 详解之终极无惑_Dablelv的博客专栏-CSDN博客_cin是什么意思 代码编译运行环境:VS2012+Win32+Debug。1.cin简介cin是C++编程语言中的标准输入流对象,即istream类的对象。cin主要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘。此外,cout是流的对象,即ostream类的对象,cerr是标准错误输出流的对象,也是ostream 类的对象。这里的标准输出指的是终端键盘,标准错误输出指的是终端的屏幕。... https://blog.csdn.net/k346k346/article/details/48213811
cin还能in到字符串里面么..

img

有帮助望采纳