#29062: 請問為何這樣做還是會印出0?


liuc7721 (Shin)

學校 : 國立竹東高級中學
編號 : 179484
來源 : [116.241.208.216]
最後登入時間 :
2025-01-11 03:01:13
a038. 數字翻轉 | From: [223.137.56.251] | 發表日期 : 2022-01-26 03:22

int main(int argc, char** argv) {

 

int x;

while(cin>>x)

{

int C[1000]={0},n=0;

while(x!=0)

{

C[n]=x%10; n++;

x=x/10;

}

for(int i=0; i<n; i++)

{

if((i==(n-1)) && (C[i]==0)) {break;}  //若是第一個數字為0,就break (但實際上還是會印出0...)

else cout<<C[i];

}

cout<<endl;

}

return 0;

}

 

求解 我加上if條件後,還是會印出0?

 
#29063: Re:請問為何這樣做還是會印出0?


liuc7721 (Shin)

學校 : 國立竹東高級中學
編號 : 179484
來源 : [116.241.208.216]
最後登入時間 :
2025-01-11 03:01:13
a038. 數字翻轉 | From: [223.137.56.251] | 發表日期 : 2022-01-26 03:27

int main(int argc, char** argv) {

 

int x;

while(cin>>x)

{

int C[1000]={0},n=0;

while(x!=0)

{

C[n]=x%10; n++;

x=x/10;

}

for(int i=0; i<n; i++)

{

if((i==(0)) && (C[i]==0)) {break;}  //這邊i要等於0才對.... 

else cout<<C[i];

}

cout<<endl;

}

return 0;

}

 

求解 我加上if條件後,還是會印出0?



 
 
#29067: Re:請問為何這樣做還是會印出0?


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [39.15.17.151]
最後登入時間 :
2025-02-02 09:42:51
a038. 數字翻轉 | From: [27.52.11.129] | 發表日期 : 2022-01-26 20:09

int main(int argc, char** argv) {

 

int x;

while(cin>>x)

{

int C[1000]={0},n=0;

while(x!=0)

{

C[n]=x%10; n++;

x=x/10;

}

for(int i=0; i<n; i++)

{

if((i==(0)) && (C[i]==0)) {break;}  //這邊i要等於0才對.... 

else cout<<C[i];

}

cout<<endl;

}

return 0;

}

 

求解 我加上if條件後,還是會印出0?



 


哪裡印出0了?你的程式如果遇到第一個字是0,就會完全沒有輸出

 
ZeroJudge Forum