作业帮 > 综合 > 作业

C语言 ,如何快速统计A到B中的所有包含9 的数字?(A和B可能是很大很大的数,A

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/25 09:37:38
C语言 ,如何快速统计A到B中的所有包含9 的数字?(A和B可能是很大很大的数,A
A到B是连续的?
最快的方法不是每个数都判断
而是从最高位开始,直接列出带9的数字
比如如果是1111 - 9999
那么首先9xxx的数字
对于剩下的 x9xx的数字,最高位为9的不在其中
然后是xx9x的数字
最后是xxx9的数字
类似于排列组合的方式
每位判断肯定会很慢 无数的模除运算会占用大量的时间
个人之见 仅供参考
再问: 能有流程图或者伪代码么?
再答: 计算A的位数da 计算B的位数db 对于对于从da到db间的每个位数,做处理 循环输出每位为9个数字 对da和db的情况,判断是否小于A或者大于B 其他的直接输出 结束 整个过程可以不用整数类型,而直接用字符串方式读取A和B并直接输出字符串 这样取da db及输出的时候都可以简单得多 输出数字的时候可以用函数嵌套