问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

悬赏10分,C语言的高手吗?第十一届全国青少年信息学奥赛程序题第四题,有谁知道怎么做吗?

发布网友 发布时间:2023-01-17 08:55

我来回答

2个回答

热心网友 时间:2023-11-18 12:55

digit(n/10,m/10);
printf("%2ld",n%10); 容易发生错误.
其实前面输出的6 2 5 4 3 7 9都是在digit(n/10,m/10); 的内层循环中输出的。后面的9 7 3 4 5 2 6才是跳出内层循环digit(n/10,m/10); 在语句printf("%2ld",n%10);中输出的,每次的内层循环digit(n/10,m/10); 都有一个语句printf(n/10,m/10);
所以结果就是这样的了。这个问题其实不是很隐蔽
不过要是初学或不细心,哈哈,可就麻烦了!

热心网友 时间:2023-11-18 12:55

慢慢跟踪就是了

main()
{long x,x2;
printf("Input a number:\n");
scanf("%ld",&x);
x2=1;
while(x2<x) //进入循环 一直到x2=10000000
x2*=10;
x2/=10; //然后x2=1000000
digit(x,x2);
printf("\n");
}
下面就进入递归了
取余得到6254379
到这里 要注意
if(m>1)
digit(n/10,m/10);
printf("%2ld",n%10);

其实 语句一直在递归里转圈 在递归调用后的print语句一值没有用 这就要从里到外一次 使用递归后的print了
最内层 n%10 =9
倒数第二层为7

然后回来

就是这样 呵呵

区别很大
digit(n/10,m/10)只是给函数传参数n/10与m/10
digit(n=n/10,m=m/10)是 先吧n变成n/10,这里n的值变了 上面没有变
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 小米手环6有NFC吗-小米手环6能听歌吗 这两款玉男士佩戴哪一款最合适? 鱼死前什么征兆?有没有饿死的?我就知道有撑死的? 《360浏览器》夜间模式开启方法介绍 iphone 电信卡怎没开4g 沙乌地 *** 话翻译中文 大疆晓Spark充电盒充电器的功率是多大? 大疆晓Spark连接充电器给充电盒充电,充满后是否会自动关闭? 天然热水器什么牌子比较好用 即墨哪个邮政银行可以打征信报告 梦见敌人骂自己 vivoy51s和华为畅享50哪个好 求助:可以测聚合物绝对分子量的研究所或者大学 如何测定树枝状聚合物的绝对重均分子量 八字长生 梦见笛子吹不响 苏州有哪些美食 苏州小吃排行榜前十名 儿歌100首100首经典儿歌 为啥说市面上卖的的胶原蛋白肽都是智商税? 二代征信影响信用卡(贷记卡)嘛? 黄门侍郎详细资料大全 商标侵权的判刑标准是多少 黄绿万枝红几片,动人秋色 何须多。下一句怎么写? 湖光秋色两相和下一句 做梦梦到自己打针输液是什么意思 梦到给自己打针有什么预兆 华为手机现在是电话屏幕,怎样找微信华为手机怎样用 连接不上 The Cramps的《Love Me》 歌词 如何取消华为畅玩4x的屏幕解锁广告?? 画八个格子的梯形怎么画 《文城》观后感 观《文城》有感 不属于商业银行开办个人往房消费信贷形式 农业银行办个人贷款,需要问清哪些问题 以下不属于个人汽车贷款的特点是 小王去银行存了50000元,属于银行信贷业务吗? 诗为酒对仗什么词 屋漏偏逢连夜雨。下联是什么?