首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoe中。然后分别统
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoe中。然后分别统
admin
2015-06-27
33
问题
请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,补充编制C++程序proj3.cpp,其功能是读取文本文件in.dat中的全部内容,将文本存放到doc类的对象myDoe中。然后分别统计26个英文字母在文本中出现的次数,统计时不区分字母大小写。最后将统计结果输出到文件out.dat中。文件in.dat长度不大于1000字节。
要求:
补充编制的内容写在“//**********333**********”
与“//**********666**********”之间。实现分别统计26个英文字母在文本中出现的次数,并将统计结果在屏幕上输出。统计时不区分字母大小写,输出不限格式。不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中,输出函数writeToFile已经给出并且调用。
//proj3.cpp
#include
#include
#include
usingnamespacestd;
classdoc
{
private:
char*str;//文本字符串首地址
intcounter[26];//用于存放26个字母的出现次数
intlength;//文本字符个数
public:
//构造函数,读取文件内容,用于初始化新对象。filename是文件名字符串首地址。
doc(char*filename);
voidcount();//统计26个英文字母在文本中出现的次数,统计时不区分大小写。
~doc();
voidwriteTOFile(char*filename);
};
doc::doc(char*fiIename)
{
ifstreammyFile(fiIename);
intlen=1001,tmp;
str=newchar[len];
length=0;
while((tmp=myFile.get())!=EOF)
{
str[length++]=tmp;
}
str[length]=’\0’;
myFile.close();
for(inti=0;i<26;i++)
counter
=0;
}
//*************333***********
//*************666***********
doc::~doc()
{
delete[]str;
}
voiddoc::writeToFile(char*
filename)
{
ofstreamoutFile(filename);
for(inti=0;i<26;i++)
outFile<
<
outFile.close();
}
voidmain()
{
docmyDoc("");
myDoc.count();
myDoc.writeToFile("");
}
选项
答案
void doc::count() { for (int i = 0; i < length; i++) { if(str[i]>=’a’ && str[i]<=’z’) counter[str[i]-’a’]++; if(str[i]>=’A’ && str[i]<=’Z’) counter[str[i]-’A’]++; } for (int index = 0; index < 26; ++index) cout<< (char)(index + 65)<< " or "<< (char)(index + 97) << " 出现的次数是:"<< counter[index]<< endl; }
解析
主要考查考生对统计字母的掌握,首先要判断该字符是否为字母,即为字符的ASCⅡ码大于等于a,小于等于z时,为小写字母,当大于等于A,小于等于Z时,为大写字母,则用于计量该字母出现次数的元素值加1。如何确定计量字母次数的元素下标是本题的难点,当字母为小写字母时,用该字母的ASCⅡ码减于a的ASCⅡ码,当字母为大写时,用该字母的ASCⅡ码减于A的ASCⅡ码,即可得到计量该字母的元素下标。
转载请注明原文地址:https://jikaoti.com/ti/3kXiFFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
简述马歇尔计划的内容与影响。(辽宁大学2014年历史学专业基础真题)
论述俄国1861年农奴制改革的原因、内容和意义。(南京大学1999年世界近现代史真题)
试论中国古代封建国家的主要历史特征。(北京大学2003年中国通史真题)
两变量相关系数为0.43,σX为5,σY为3,请问σYX为多少?()
已知某次学业成就测验的平均分数是80,标准差为4。如果某考生得分为92,则该分数转换为标准分后是()
属于同一行业、规模相同且利润率相同的公司的股票一般对市场指数的反应程度相同。()
对股票A和股票B的两个(超额收益率)指数模型回归结果如下表。在这段时间内的无风险利率为6%,市场平均收益率为14%,对项目的超额收益以指数回归模型来测度。(1)计算每只股票的α,信息比率,夏普测度,特雷诺测度;(2)下列各个情况下投资者选择哪只股票最
清朝乾隆年间,四川重庆府某甲“因戏而误杀旁人”,被判处绞监候。依据清代的会审制度,对某甲戏杀案的处理,适用的程序是
已知当x>0时函数f(x)一sin(sinx)与x4是等价无穷小量,则f(x)的带皮亚诺余项的四阶麦克劳林公式是f(x)=_________.
对下列二叉树进行中序遍历的结果是()。
随机试题
细胞或组织具有对刺激产生动作电位的能力,称为()
喜糖软件和应用软件的相关关系是()。
根据我国《证券投资基金法》的规定,设立基金管理公司,注册资本不低于1亿元人民币,且必须为实缴货币资本。()
产品从流通据点到用户之间的运输称为()。
行百里者半九十,中华民族伟大复兴,绝不是轻轻松松、敲锣打鼓就能实现的,全党必须准备付出更为艰巨、更为艰苦的努力。实现伟大梦想,必须进行伟大斗争,这是因为()。
对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。
给定程序中,函数fun的功能是:找出N×N矩阵中每列元素中的最大值,并按顺序依次存放于形参b所指的一维数组中。请在程序的中括号处填入正确的内容并把中括号删除,使程序得出正确的结果。注意:部分源程序在文件BLANKl.C中。不得
请在【答题】菜单下选择【进入考生义件夹】命令,并按照题目要求完成下面的操作。注意:以下的文件必须都保存在考生文件夹下。请根据提供的“ppt素材及没计要求.docx”设计制作演示文稿,并以文件名“ppt.pptx”存盘,具体要求如下。演示义稿中需包含
Beforethe20thcenturythehorseprovideddaytodaytransportaitionintheUnitedStates.Trainswereusedonlyforlongdista
Darwinconsidered(continuity)orsimilarityof(expression)(of)animalsandhumanbeingsasfurtherevidenceofhumanevolutio
最新回复
(
0
)