关于#c++#的问题:求阶乘和

输入
多组测试数据。每组一行,输入一个整数n, 1 <= n <= 10


#include <iostream>
using namespace std;

int main(){
    int n, sum = 0;
    cin >> n;
    
    for(int i=1; i<=n; i++){
        int tmp = 1;
        for(int j=1; j<=i; j++){
            tmp *= j;
        }
        sum += tmp;
    }
    cout << sum << endl;
    return 0;
} 

考虑多组数据,以下代码,输入0结束,否则可以继续计算

#include <iostream>
using namespace std;

int main() {
    int n;
    while (cin >> n) {
        int sum = 0, fact = 1;
        for (int i = 1; i <= n; i++) {
            fact *= i;
            sum += fact;
        }
        cout << sum << endl;
    }
    return 0;
}