加法考虑溢出的问题

写一个函数返回1+2+3+…+n的值(假定结果不会超过长整型变量的范围)

既然这里提示不超过长整形那么就要考虑结果是否是int。

int Sum( int n )
{
    return ( (long)1 + n) * n / 2; //return (1l + n) * n / 2;
}
这里将1进行转换,转换为长整形。所以后面都会转换为long。

猜你喜欢

转载自blog.csdn.net/shantf93/article/details/79768982
今日推荐