面试啦 - 提供专业面试问题及答案、面试技巧、助您成功面试!
您的当前位置:首页 > 面试题库 > IT面试题 > C++面试题 > 正文

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

int Sum( int n )
{
 return ( (long)1 + n) * n / 2;  //或return (1l + n) * n / 2;
}
  剖析:
 
  对于这个题,只能说,也许最简单的答案就是最好的答案。下面的解答,或者基于下面的解答思路去优化,其效率也不可能与直接return ( 1 l + n ) * n / 2相比!

int Sum( int n )
{
 long sum = 0;
 for( int i=1; i<=n; i++ )
 {
  sum += i;
 }
 return sum;
}
词条:c面试题
上一篇:不开辟用于交换数据的临时空间,如何完成字符串的逆序 下一篇:下述程序的作用是计算机数组中的最大元素值及其下标
与该文相关的文章

温馨提示:如果您对面试网有任何建议,请通过网站联系邮箱向我们反馈,感谢各位的建议与支持!