首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用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
41
问题
请使用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://kaotiyun.com/show/lIBD777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在动机斗争中,面临两个或者两个以上目标冲突的有
一位教师对4年级的学生进行了一项阅读能力成绩测验。考查原始分数的分布后发现,高分很少但低分相当多。如果该教师感兴趣的是学生对所涉及知识的掌握程度,那么她应该报告以下分数的哪个结果?()
有两列正态变量x和y,已知其中Sx=4,Sy=2,Sx-y=3,那么这两列变量的积差相关系数是()
学校为了培养学生阅读的习惯,学校在图书馆、餐厅和教室布置了读书角,一段时间以后很多同学的阅读能力都得到提高,这种现象说明
生产性是教育的本质属性,这一观点属于教育本质的
下列哪一行业可能具有最低的资产负债率?()
设f(x)在(一∞,+∞)内有定义,且x0≠0是函数f(x)的极大值点,则().
有下列二叉树,对此二叉树前序遍历的结果为()。
某二叉树共有60个叶于结点与50个度为1的结点,则该二叉树中的总结点数为()。
随机试题
在微波发信机中,()器将中频已调信号变为微波已调信号。
下列经脉不经过"咽"的是:
下列有关血制品的叙述正确的是
香豆素与碱作用的特点及原因为()
×日,某双苯厂硝基苯精馏塔发生爆炸,造成8人死亡,60人受伤,直接经济损失6908万元,并引发松花江水污染事件。国务院事故及事件调查组认定,该双苯厂“11.13”爆炸事故和松花江水污染事件是一起特大生产安全责任事故和特别重大水污染责任事件。1.爆炸
教师职业的最大特点在于职业角色的多样化,“亲其师,效其行,听其言,信其道”所体现的教师职业角色是()
2012年上半年世界62个主要产钢国和地区粗钢产量76686万吨,同比增长0.88%,按日均计算仅增长0.32%,扣除我国粗钢产量外日均产量同比下降0.5%。下列选项中,2011年6月粗钢产量高于2011年上半年平均水平的是:
①船开了。一个朋友拨着船,缓缓地流到河中间去②朋友说这里是“鸟的天堂”,有许多只鸟在这棵树上做窝,农民不许人捉它们③船在树下泊了片刻,岸上很湿,我们没有上去④只有无数的树根立在地上,像许多根木桩⑤地是湿的,大概涨潮时河水常常冲上岸去。“鸟的
青春期的特点主要包括
人类命运共同体
最新回复
(
0
)