乒乓球的十一分制和二十一分制

剛開始的那種輸入一行信息做判斷的方法需要進行掌握

#include<iostream>
using namespace std;
int sign[1000000];
int w,l;
int main()
{
    char s;
    for(int i = 1;cin>>s&&s!='E';i++)//E可能出現在字符串中間或者末尾,也可能之前會有換行
    {
        if(s == 'W')sign[i]=1;//將字符信息轉化爲容易處理的數字信息
        if(s == 'L')sign[i]=2;
    }
    for(int i = 1;1;i++)//爲方便起見,設定了一個死循環,一定注意在結束條件下進行break
    {
        if(sign[i]==1)w++;
        if(sign[i]==2)l++;
        if(sign[i]==0)
        {
            cout << w << ":"<<l<<endl<<endl;
            break;
        }
        if(w-l>=2||l-w>=2)
            if(w>=11||l>=11)
                {
                    cout << w << ":" << l<<endl;
                    w=0;l=0;//下一局比分需要從0開始重新計算
                }
    }
    w = 0;l = 0;//重新輸出21分制比分,需要重新計算比分
    for(int i = 1;1;i++)
    {
        if(sign[i]==1)w++;
        if(sign[i]==2)l++;
        if(sign[i]==0)
        {
            cout << w << ":"<<l<<endl<<endl;
            break;
        }
        if(w-l>=2||l-w>=2)
            if(w>=21||l>=21)
                {
                    cout << w << ":" << l<<endl;
                    w=0;l=0;//下一局比分需要從0開始重新計算
                }

    }

}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章