#4922: 怎麼判斷換行


CSE911515 (蘇煒翔你好過分)

學校 : 國立臺中高級工業職業學校
編號 : 15517
來源 : [59.127.129.124]
最後登入時間 :
2023-05-03 13:58:05
d681. BinaryCount -- 葆葆 | From: [123.240.194.132] | 發表日期 : 2011-02-28 13:13

#include<iostream>
using namespace std;
int main()
{
    char A[1000],B[1000],ch[10];
    int a;
    while(cin>>A)
    {
        a=strlen(A);
        cout<<A;
        while(1)
        {
            cin>>ch>>B;
            if(ch[0]=='o')
            {
                cout<<"||"<<B;
                for(int x=0;x<a;x++)
                {
                    if(A[x]==0&&A[x]==B[x])
                        A[x]=0;
                    else
                        A[x]=1;
                }
            }
            else if(ch[0]=='a')
            {
                cout<<"&&"<<B;
                for(int x=0;x<a;x++)
                {
                    if(A[x]==1&&A[x]==B[x])
                        A[x]=1;
                    else
                        A[x]=0;
                }
            }
        }
        cout<<" = "<<A<<endl;
    }
    return 0;
}
 
請問要怎麼跳出while(1)這個迴圈
剛學沒多久
看別人都用EOF都不太知道是什麼意思
照別人打也不知道要放哪裡 
 
#4924: Re:怎麼判斷換行


liouzhou_101 (王启圣)

學校 : 广西柳州高级中学
編號 : 3714
來源 : [126.108.190.144]
最後登入時間 :
2023-07-21 17:40:51
d681. BinaryCount -- 葆葆 | From: [116.253.22.47] | 發表日期 : 2011-02-28 22:35

#include
using namespace std;
int main()
{
    char A[1000],B[1000],ch[10];
    int a;
    while(cin>>A)
    {
        a=strlen(A);
        cout<
        while(1)
        {
            cin>>ch>>B;
            if(ch[0]=='o')
            {
                cout<<"||"<
                for(int x=0;x
                {
                    if(A[x]==0&&A[x]==B[x])
                        A[x]=0;
                    else
                        A[x]=1;
                }
            }
            else if(ch[0]=='a')
            {
                cout<<"&&"<
                for(int x=0;x
                {
                    if(A[x]==1&&A[x]==B[x])
                        A[x]=1;
                    else
                        A[x]=0;
                }
            }
        }
        cout<<" = "<
    }
    return 0;
}
請問要怎麼跳出while(1)這個迴圈
剛學沒多久
看別人都用EOF都不太知道是什麼意思
照別人打也不知道要放哪裡 


应该是像
while (scanf("%d",&n)!=EOF)
吧,也就是输入后面加上!=EOF,即不等于EOF。
这里EOF是-1,当没有输入时scanf()是-1。
 
#4932: Re:怎麼判斷換行


CSE911515 (蘇煒翔你好過分)

學校 : 國立臺中高級工業職業學校
編號 : 15517
來源 : [59.127.129.124]
最後登入時間 :
2023-05-03 13:58:05
d681. BinaryCount -- 葆葆 | From: [123.240.193.196] | 發表日期 : 2011-03-03 19:10

我把它改成 while(scanf("%s",&ch)!=EOF)

可是他還是跳不出去迴圈耶 

 
#4939: Re:怎麼判斷換行


cbs951214 (哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈...)

學校 : 康橋雙語學校
編號 : 11868
來源 : [111.241.182.196]
最後登入時間 :
2023-07-12 23:02:02
d681. BinaryCount -- 葆葆 | From: [114.45.161.30] | 發表日期 : 2011-03-05 14:59

我把它改成 while(scanf("%s",&ch)!=EOF)

可是他還是跳不出去迴圈耶 


刪掉& 
#4940: Re:怎麼判斷換行


alopex_ (碰碰!這是什麼!)

學校 : 國立鳳山高級中學
編號 : 12777
來源 : [218.166.51.226]
最後登入時間 :
2014-09-19 10:05:05
d681. BinaryCount -- 葆葆 | From: [218.172.2.10] | 發表日期 : 2011-03-05 19:00

我把它改成 while(scanf("%s",&ch)!=EOF)

可是他還是跳不出去迴圈耶 


刪掉&


其實列陣起始有沒有&都無所謂

 eof是結束輸入

在 Dev-C++是Ctrl+Z

... 

 
ZeroJudge Forum