在下列C語言程式裡面,為什麼while的條件式是下(b)我看不懂這是代表什麼意思...
int gcd(inta , int b)
{
int c;
while(b)
{
c=a%b;
a=b;
b=c;
}
}
funforeverhttp://programming.im.ncnu.edu.tw/C_index.html提到:
一個不錯學習的網址~分享給大家
C 語言中沒有真假值的變數型態,所以用 0 當作 false,不是0都當做 true。
while(b) 的意思就是:進行 while 迴圈,直到 b 的值變成 0。這個不懂,大概也沒什麼 C 程式看得懂了。
這程式是迴圈式的輾轉相除法,c 是兩數相除的餘數。當 c 等於零的時候,也就是 a=b 的時候,即輾轉相除法結束的時候。這時再把 c 設給 b,b 就等於 0 也就是迴圈該跑完的時候。