永发信息网

c语言逆序打印

答案:2  悬赏:40  手机版
解决时间 2021-04-26 06:04

#include "stdio.h"
#include "conio.h"
long a,x;
void pin()
{
    a=x%10;
    if(a)
    {
        printf("%ld\t",a);
        getch();
        x=x/10;
        printf("%ld\n",x);
        pin();

    }
}
main()
{
    scanf("%ld",&x);
    pin();
    getch();
}

功能:输入一个数,逆序打印。win-tc编译。

能实现,但分析程序时printf("%ld\t",a);先于pin();
执行,应该不能实现逆序打印的功能,希望各位c语言递归学得比较好的高手给我指点迷津。

最佳答案

假设x=2569


printf("%ld\t",a);  就是打印x的个位9


然后x除以10,x=256 原来的十位变成了个位


再调用pin()时,a=x%10得到的a=6 是打印原来x的十位


再除以10再调用pin(),得到打印原来x的百位


这样一直下去直到全部打印完,递归结束


printf("%ld\n",x);  应该是调试用的,影响显示的输出结果,可以去掉

全部回答

我觉得pin()应该在printf之前

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
DNF中做泰拉石首饰大约给花多少游戏币?
做个单亲妈妈好吗?
高丽名人养生纤体美容会所兰州旗舰店地址在什
求几个三明治的简单做法。
谁能告诉我电视么有声音了咱回事情,以前有里
希望ol单机版
光棍节怎么过才能不寂寞不空虚?
骆驼祥子由朝气蓬勃到一蹶不振是因为发生了哪
结婚需要哪些证件啊?
诺基亚E51现在市场上价格多少啊?
义乌哪里有斯诺克台球厅
巴金说过的和平名言,论语中有关"和平"的名言
万利缘超市在哪里啊,我有事要去这个地方
为什么我上QQ密保卡得输俩次?
支付宝怎么登录,支付宝无法登录怎么解决啊?
推荐资讯
中国海洋大学青岛学院收发室假期有工作人员吗
今年常州工程职业学院的最低分数线
诺基亚5330如何设置背光时间
PES2009绿茵模式门将操作的问题
九间棚科研楼地址有知道的么?有点事想过去
明代最大的奸臣是谁?
华硕N71Vn
中国电信全网通手机卖场中心广场店我想知道这
无锡哪有卖金项链的
在三角行中ASS为什么不能证明两个三角行全等`
我的笔记本电脑怎么玩不了QQ农场,
帮忙起个梦幻西游名字 要有这个词的
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?