关于微软的一道面试题

来源:互联网 发布:主播用的笑声软件 编辑:程序博客网 时间:2024/04/29 20:54

原题是:求 1 + 2 + 3 + ... + n
要求:不能用乘除法,不能用if,while, switch,case, 不能用(a < b ? a : b)三目运算符

 

关键点:利用&&运算的短路性质以及递归

 

关键代码:

int fun3(int n, int *sum){int ret;ret = n&&fun3(n-1, sum);return (*sum += n);}


如果大家有好的思路欢迎交流!一起学习一起进步!

原创粉丝点击