资源简介
问题描述:
一本书的页码从自然数1开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。例如第6页用6表示,而不是06或006。数字统计问题要求对给定书的总页码n,计算出书的全部页码中分别用到多少次数字0,1,2,3,…,9。
编程任务:
给定表示书的总页码的十进制整数n(1<<n<<109)。编程计算书的全部页码中分别用到多少次数字0,1,2,3,…,9。
数据输入:
输入数据由文件名input.txt的文本文件提供。每个文件只有1行,给出表示书的总页码的整数n。
结果输出:
程序运行结束时,将计算结果输出到文件output.txt中。输出文件共有10行,在第
代码片段和文件信息
// Exp02.cpp
/***************************************************************
数字统计
功能:给定整数n,统计1~n含有0~9数字的数量,不包括前导数字0
说明:运行程序时,须先在可执行文件所在目录下创建输入文件
Input.txt,注意区分大小写及扩展名,并入输入要统计的
整数n,程序执行完后,可在可执行文件所在的目录下的
Output.txt查看统计结果。
(c) M.H.Yan 2012.3.3
***************************************************************/
#include
#include
#include
using namespace std ;
//--------------DigitStatistics 类定义----------------
// 数字统计类
class DigitStatistics
{
// 公有接口
public :
typedef unsigned long DWORD ;
typedef unsigned int WORD ;
// 构造函数
DigitStatistics () ;
// 从文件输入
void InputFromFile () ;
// 输出到文件
void OutputToFile () ;
// 数字统计过程
void StartDigitStatistics () ;
// 获取前导0的个数
void GetZeroCount
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 602153 2012-03-03 13:26 Exp02\Debug\Exp02.exe
文件 841248 2012-03-03 13:26 Exp02\Debug\Exp02.ilk
文件 358548 2012-03-03 13:26 Exp02\Debug\Exp02.obj
文件 2139844 2012-03-03 13:03 Exp02\Debug\Exp02.pch
文件 1156096 2012-03-03 13:26 Exp02\Debug\Exp02.pdb
文件 132096 2012-03-03 13:26 Exp02\Debug\vc60.idb
文件 118784 2012-03-03 13:26 Exp02\Debug\vc60.pdb
目录 0 2012-03-03 16:26 Exp02\Debug
文件 4957 2012-03-03 16:25 Exp02\Exp02.cpp
文件 81 2012-03-02 10:28 Exp02\Exp02.dep
文件 4272 2012-03-02 14:20 Exp02\Exp02.dsp
文件 535 2012-03-02 10:28 Exp02\Exp02.dsw
文件 4121 2012-03-02 14:20 Exp02\Exp02.mak
文件 58368 2012-03-03 16:27 Exp02\Exp02.ncb
文件 53760 2012-03-03 16:27 Exp02\Exp02.opt
文件 1245 2012-03-03 13:26 Exp02\Exp02.plg
文件 2 2012-03-03 13:15 Exp02\Input.txt
文件 30 2012-03-03 13:27 Exp02\Output.txt
目录 0 2012-03-03 16:27 Exp02
----------- --------- ---------- ----- ----
5476140 19
- 上一篇:计算理论导引答案
- 下一篇:安卓公交线路查询APP
评论
共有 条评论