本文介绍: 在PrintOut函数中,我们利用了取模方法来逐个获取字符。此时我们发现取模方法有其局限性,我们只有对一个小于10的数取模,方可直接获取该数位上的数字。因此我们想到了办法:在PrintOut函数里面调用一次PrintOut函数,直到该数字小于等于10,再进行取模。我们将这种在A函数里面重复调用A函数的行为,称为函数的递归,这种递归思想在程序设计当中十分重要。这里我们首先关注主函数定义int类型变量12345,并且将其传入了函数PrintOut

当我们输入一串整数,希望依次打印其值(一次一位)譬如输入“12345”,依次打印1,2,3,4,5。如何设计程序

解决这个问题方法十分多样,我们这里采取“递归思维进行设计

#include <stdio.h>

void PrintDigit(int n) {
    printf("%dn", n);
}

void PrintOut(int n) {
    if (n >= 10) {
        PrintOut(n / 10);
    }
    PrintDigit(n % 10);
}

int main() {
    int number = 12345;
    PrintOut(number);
    return 0;
}

这里我们首先关注主函数定义int类型变量12345,并且将其传入了函数PrintOut。

在PrintOut函数中,我们利用了取模方法来逐个获取字符。此时我们发现取模的方法有其局限性,我们只有对一个小于10的数取模,方可直接获取该数位上的数字。因此我们想到了办法:在PrintOut函数里面再调用一次PrintOut函数,直到该数字小于等于10,再进行取模

我们将这种在A函数里面重复调用A函数的行为,称为函数的递归,这种递归思想在程序设计当中十分重要。

原文地址:https://blog.csdn.net/qq_37511412/article/details/134667163

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_13869.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注