C語言回圈和遞回求階乘詳解
- 回圈求階乘
- 遞回求階乘
回圈求階乘
#include<stdio.h>
#include<stdlib.h>
int Factorial1(int a) {//求a的階乘
int sum = 1;//定義一個變數存盤階乘值
for (int i = 1; i <= a; i++) {//定義i做回圈
sum = sum * i;
}
return sum;
}
int main(){
int a;
printf("請輸入要求的階乘數:\n");
scanf("%d", &a);
printf("%d",Factorial1(a));
system("pause");
return 0;
}
回圈求階乘就是找一個中間變數儲存回圈相乘的結果,
遞回求階乘
#include<stdio.h>
#include<stdlib.h>
int Factorial2(int a){
if (a == 1){
return 1;
}
return a*Factorial2(a - 1);
}
int main(){
int a;
printf("請輸入要求的階乘數:\n");
scanf("%d", &a);
printf("%d",Factorial2(a));
system("pause");
return 0;
}

遞回求解的思路是先一步一步深入遞回,然后在結束條件到來后,再去向回圈外取值,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/205738.html
標籤:python
上一篇:QT之QUdpSocket學習
