求阶乘和中c与c++的区别


//#include
//using namespace std;
//int main() {
//    int sum=0;
//    for (int i = 1; i <=10; ++i) { 
//        int t = 1;
//        for (int j = 1; j <= i; ++j) { 
//        t *= j; 
//        } 
//        sum += t;
//    }
//    cout << sum;
//    return 0;
//}

#include 
                   //求n的阶乘
int main()
{
    int n = 0;
    int i = 10;
    int ret = 1;
    int sum = 0;
//    printf("请输入一个数:");
//    scanf("%d", &i);
    for (n = 1; n <= i; n++)
    {
        ret = ret * n;
        sum = sum + ret;
    }
    printf("sum = %d\n", sum);
    return 0;
}

为什么c++需要两个循环,c只需要一个呢?如何改成只需一个的呢?

c++代码

#include <cstdio>
//或#include <iostream>
using namespace std;                   //求n的阶乘
int main()
{
    int n = 0;
    int i = 10;
    int ret = 1;
    int sum = 0;
//    printf("请输入一个数:");
//    scanf("%d", &i);
    for (n = 1; n <= i; n++)
    {
        ret = ret * n;
        sum = sum + ret;
    }
    printf("sum = %d\n", sum);
    //或者cout<<"sum="<<sum;
    return 0;
}

解答的方法不一样而已,跟c与c++没有任何关系

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^