求1+2+....+n

1.问题描述

求1+2+….+n,要求不能使用乘除法,for,while,if,else switch,case等关键字及条件判断语句。(来自《剑指offer》)


2.分析

在c语言里面我们可以使用函数指针,来调用不同的函数,达到题目的要求。


3.代码

unsigned int Solution_Teminator(unsigned int n)
{
    return 0;
}

unsigned int Sum_Solution(unsigned int n)
{
    static fun f[2] = {Solution_Teminator,Sum_Solution};
    
    return n + f[!!n](n - 1);
}
点赞