×
解除綁定,重新設定系統帳號的密碼
您的系統帳號 ID:
您的系統帳號:
您的帳號暱稱:
設定新密碼:
設定新密碼:
×
請輸入要加入的「課程代碼」
請向開設課程的使用者索取「課程代碼」
分類題庫
解題動態
排行榜
討論區
競賽區
登入
註冊
發表新討論
#9352: 為什麼會一直逾時?
40271201H
(OO)
學校 : 國立臺灣師範大學
編號 : 44060
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [140.122.53.60]
最後登入時間 :
2015-01-12 10:33:21
a038.
數字翻轉
| From: [140.122.53.42] | 發表日期 : 2014-10-26 11:38
#include <stdio.h>
int main() {
int n;
int gcd;
while(scanf("%d",&n)!=EOF){
if(n==0)
printf("0");
else{
gcd=n%10;
while(gcd==0){
gcd=n/10;
gcd=n%10;
}
while(n>=1){
printf("%d",gcd);
n=n/10;
gcd=n%10;
}
printf("\n");
}
}
return 0;
}
#9359: Re:為什麼會一直逾時?
gtyuse
(gtyuse)
學校 : 國立科學工業園區實驗高級中學
編號 : 37104
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [140.112.215.56]
最後登入時間 :
2021-02-18 08:23:14
a038.
數字翻轉
| From: [123.110.232.18] | 發表日期 : 2014-10-27 20:07
while(gcd==0){
gcd=n/10;
gcd=n%10;
}
改成
gcd=n%10;
while(gcd==0){
n=n/10;
gcd=n%10;
}
因為發現尾數是 0 後要把 n 除以 10
消掉最後的 0
另外 gcd 是最大公因數 ( Greatest common divisor )
建議改成 remainder, rmd, lastdigit 之類不易混淆的變數名稱
ZeroJudge Forum