turbo c2 0程式設計求1 2 3 n ,n為輸入且3 n 20

2025-03-18 01:05:16 字數 1276 閱讀 3256

turbo_c2.0程式設計求1!+2!+3!+.....+n!,n為輸入且3<=n<=

1樓:匿名使用者

#include ""

int a(int n) /求n的階乘的函灶茄數。

int sum=1;

while(n>=1)

sum*=n;

n--;return sum;

void main()

int sum=a(1)+a(2); 因為n>=3且n<=20,所以sum的初值賦睜仿1!+2!之和。

int n;

scanf("%d",&n);

while(n>=3&&n《隱早察=20)sum+=a(n);

n--;printf("%d",sum);

2樓:匿名使用者

#include大橡。

void main()

int n,b=1,c=0,d=1,e=1;

printf("請純陵輸入3-20之間的數:")scanf("%d",&n);

if(n<3||n>20) printf("error");

else 可以了。

turbo c中,int a =3,b=2,c; c=(a++)+(++a)+(a++) printf("%d",c)得12,

3樓:網友

c=(a++)a)+(a++)這算一步,c得到這個值時a++提前做並不重新整理a的值,再遇到++a重新整理a的值。

變成c=(a++)a++)a),即(a++)a++)之後直接a+2,所以c=3+3+(+3+2))=3+3+6=12,所以你輸入c=(a++)a++)a),結果也是12

你可以分步做c=a++;c+=++a;c+=a++,這就和第二個答案13一樣了,因為記憶體重新整理了。

如果這個式子再長一點,例如a =3;c=(a++)printf("%d",c);a =3;c=(a++)a);printf("%d",c);a =3;c=(a++)a)+(a++)printf("%d",c);a =3;c=(a++)a)+(a++)a);printf("%d",c);a =3;c=(a++)a)+(a++)a)+(a++)printf("%d",c);

這樣你就會發現(a++)都被提前了,這是程式當初設計的問題。

printf("%d",(a++)a)+(a++)不難發現printf函式的**裡面重新整理值比較快,也符合所學知識得到的結果,是符合邏輯語序,運算高低階的關係的,沒有對錯,vc也是這結果,而且到現在都沒改,不用太在意。

c語言程式設計求12320的和,C語言程式設計求12320的和

求1 2 3 20 最好是用迴圈做,用遞迴法,程式的資源開銷大,效率低,運算時間將更長!include int fact int i else void main printf result d sum main 答案如下 include main printf d sum 用c語言程式設計求出1 ...

求機型 主要為程式設計使用 20

求機型 主要為程式設計使用 還是首選i處理器。硬碟建議採取兩塊t,做raid,可以儘可能的保證資料不會發生意外。顯示器用寸的差不多吧,最好用三星的液晶板,色彩和亮度比較舒服。其他配件 鍵鼠套 用微軟系列即可。音響 惠威低端產品就ok 顯示卡 就用藍寶hd g 白金版即可,反正主要不是玩遊戲。想買think...

1求123100的值。c語言程式設計

參考 如下 include int main int argc,char argv 執行結果 include void main 用c語言程式設計求出1 2 3 100的值?include void main include int main 這樣是不更簡潔呢?物聯網校企聯盟技術部 int i,k ...