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 ...