完成于2020.11.08
剑指 Offer 64. 求1+2+…+n
废话少说,直接上题目链接:点击进入
题目描述:
代码是这样的呢:
其实这里的sum是可以省略的(小声BB)
//&&:只要前一个条件不满足,后面一个语句不会执行;&无论前一个条件成立不成立,都执行后一条语句
int sumNums(int n)
{
int sum = n;
(sum!=0)&&(sum=sum+sumNums(n-1));//若sum不等于0,则执行递归操作,一旦sum等于0就停止递归
return sum;
}
运行结果:
小结:
- 首先了解下&与&&的区别:来自百度
&&是满足了前一个条件之后才执行下一个条件,如果不满足前一个条件就不会执行下一个条件;
&是无论前一个条件满足不满足都会执行下一个条件 - 根据题意,限制了这么多的语句与运算符不给用,于是我就想到了用递归的方法
By Levi.