两种方法解决
方法一、循环求阶乘#include方法二、自定义函数using namespace std; int main () { int n=0,sum=1; scanf("%d",&n); for(int i=1;i<=n;i++) { sum=sum*i; } printf("n!= %d",sum); return 0; }
#includeusing namespace std; int factorial(int n) { int sum=1; for (int i=1;i<=n;i++) { sum=sum*i; } return sum; } int main() { int cnt=0,n; scanf("%d",&n); cnt=factorial(n); printf("n!= %d", cnt); return 0; }
当然,也可以用while循环写
#includeusing namespace std; int factorial(int n) { int sum=1; while(n>1) { sum=sum*n; n--; } return sum; } int main() { int cnt=0,n; scanf("%d",&n); cnt=factorial(n); printf("n!= %d", cnt); return 0; }
暑期编程PK赛 得CSDN机械键盘等精美礼品!



