计算1~n之和

传统方法:

int sum(int n)

{
        int i, s = 0;

        for (i = 1; i <= n; i++) {
                s += i;
        }

        return s;

}


高斯计算方法:

int sum(int n)
{
        if ((n % 2) == 0) {
                return ((n / 2) * (n + 1));
        }

        return ((n / 2) * (n + 1) + (n + 1) / 2);
}

你可能感兴趣的:(计算1~n之和)