#include #include #define repeat do{ #define until(e) }while(!(e)) long fact(long n); /*算 n 階乘, 阿就是1乘2乘...乘到n啦 */ int main() { long x; /* 不叫 n 也沒關係啦 */ repeat cout <<" N=? "; cin >> x; /*輸入資料到變數 x */ cout<< "N!==" << fact(x) << endl; until(x==0); /*做到 0階乘後就不玩了 :-) */ return 0; } long fact(long n) { long ans=1; for(int i=1; i<=n; i=i+1){ ans=ans*i; } return ans; /*****想一想, 如果 n 小於0會怎樣 ? *****阿如果 n 太大又會怎樣? *********/ }