注册 登录
编程论坛 C++教室

求教c++循环

熊孩纸不懂事 发布于 2015-03-18 20:07, 383 次点击
#include<iostream>
using namespace std;
int fact(int n)
{
    int result=1;
    if(n<0)
        return -1;
    else if(n==0)
        return 1;
    while (n>1)
    {
        result*=n;//这一步的循环转换具体流程是?   result*什么然后得到n?难道是直接n*result(1)=n?
        n--;
    }
    return result;
}
int main()
{
    int n;
    cout<<"please intput a number n to calculte n!:";
    cin>>n;
    cout<<n<<"!"<<fact(n)<<endl;
    return 0;
}
2 回复
#2
lovegh2015-03-18 20:13
这不是算阶乘的么、而且你这个程序超过25应该就会溢出。

result *= n; // 是result = result * n;的简写。
#3
熊孩纸不懂事2015-03-18 20:26
回复 2楼 lovegh
谢了
1