这个代码有以下错误:
1.应在b[cnt]=a;后加cnt++;
2.应将int fenW,fenL;改为int fenW=0,fenL=0;
3.应将所有cout<<fenW<<":"<<fenL;改为cout<<fenW<<":"<<fenL<<endl;
4.应将两个if (fenW!=0||fenL!=0){//输出剩余
cout<<fenW<<":"<<fenL<<endl<<endl;
}else cout<<endl;改为cout<<fenW<<":"<<fenL<<endl<<endl;
by maohonghao @ 2023-09-09 12:45:05
@[maohonghao](/user/1035977)
谢谢大佬,关注回报
by denghuolanshan_1024 @ 2023-09-09 18:05:44
@naohonghao
改了之后代码还是10分
```cpp
#include<iostream>
using namespace std;
int main(){
char a,b[62530];
int cnt;
while (cin>>a){
if (a=='E'){
if (cnt==0)b[0]='E';
break;
}
b[cnt]=a;
cnt++;
}
if (b[0]=='E'){
cout<<"0:0\n\n0:0";
return 0;//特判第一个是E
}
int fenW,fenL;
for(int i=0;i<cnt;i++){//11分
if (b[i]=='W')fenW++;//加分
else fenL++;
if (fenW==11&&fenL<10){//W11分胜利
cout<<"11:"<<fenL<<endl;
fenW=0;
fenL=0;
}else if(fenL==11&&fenW<10){//L11分胜利
cout<<fenW<<":11"<<endl;
fenW=0;
fenL=0;
}else if (fenW>=11&&fenW-fenL==2){//W12分and以上胜利
cout<<fenW<<":"<<fenL<<endl;
fenW=0;
fenL=0;
}else if (fenL>=11&&fenW-fenL==-2){//L12分and以上胜利
cout<<fenW<<":"<<fenL<<endl;
fenW=0;
fenL=0;
}
}
cout<<fenW<<":"<<fenL<<endl<<endl;
fenW=0;
fenL=0;
for(int i=0;i<cnt;i++){//21分
if (b[i]=='W')fenW++;//加分
else fenL++;
if (fenW==21&&fenL<20){//W21分胜利
cout<<"21:"<<fenL<<endl;
fenW=0;
fenL=0;
}else if(fenL==21&&fenW<20){//L11分胜利
cout<<fenW<<":21"<<endl;
fenW=0;
fenL=0;
}else if (fenW>=21&&fenW-fenL==2){//W22分and以上胜利
cout<<fenW<<":"<<fenL;
fenW=0;
fenL=0;
}else if (fenL>=21&&fenW-fenL==-2){//L22分and以上胜利
cout<<fenW<<":"<<fenL;
fenW=0;
fenL=0;
}
}
cout<<fenW<<":"<<fenL<<endl<<endl;
return 0;
}
```
by denghuolanshan_1024 @ 2023-09-09 18:09:53
@[denghuolanshanchu](/user/893114)
你再检查一下
by maohonghao @ 2023-09-09 18:29:34
@[maohonghao](/user/1035977)
定义变量时有设初始值吗?
59和63行换行了吗?
by maohonghao @ 2023-09-09 18:35:18
@[denghuolanshanchu](/user/893114)
这两个改了就ac了
by maohonghao @ 2023-09-09 18:36:31