递归返回最终值

时间:2018-09-27 20:06:28

标签: c

因此,此功能的目标是读取输入并对其计数,同时将它们以相反的顺序添加到输入中。

“” read_the_num()“”是一个读取输入的函数,如果没有要读取的内容,则返回FAIL。

因此,如果输入是, 1个 2 3

我的函数打印出来, 6 2 1

我需要打印出来的是, 6 5 4

我只能对这个问题使用递归。 我基本上需要了解如何计算输入,然后以相反的顺序打印出来,同时增加输入的总数

输入=> 1 2  应该打印4 3,因为有2个输入,所以加2且必须向后打印。

int counts(int x)
{
    int n = read_the_num();
    if (n != FAIL) {
        int c = counts(x + 1);
        printf("%d\n", c + n);
    }
    else {
        return x;
    }
    return 0;
}

int main(void)
{
    counts(0);
}

0 个答案:

没有答案