3. 字母频率统计
【问题描述】
编写程序从标准输入中读入一段英文,统计其中小写字母出现次数,并以柱状图的形式显示其出现次数。
【输入形式】
在标准输入上输入一段英文文章(可能有一行,也可能有多行),在新的一行的开头输入ctrl+z键表示结束。
【输出形式】
在屏幕上依次输出表示每个小写字母出现次数的柱状图(以“*”字符表示柱状图,空白处用空格字符表示,某个小写字母出现多少次,就显示多少“*”字符;柱状图的高度以出现最多的字母次数为准),在最后一行依次输出26个小写字母。
【样例输入】
The computing world has undergone a
revolution since the publication of
The C Programming Language in 1978.
【样例输出】
【样例说明】
在输入的英文短文中,小写字母a出现了6次,所以其上输出了6个字符"*"。
出现次数最多的是字母n,所以柱状图的高度为9个字符。
字母j没有出现,所以其上都为空格字符。
【评分标准】
该题要求输出柱状图表示的字母出现次数,共有5个测试点。
上传C语言文件名为bar.c。
【输入形式】从标准输入读取顶点坐标。
格式为:第一行是点的个数N(3≤N≤15),后面紧接着N 行,每行两个数字(由空格隔开),分别表示该点的X、Y坐标(0≤X,Y≤32767)。
所有点的坐标互不相同,且按顺时针次序给出。
输入数据确保该多边形是一个凸多边形。
【输出形式】向标准输出打印一个浮点数,是该多边形的面积。
该浮点数保留两位小数。
【输入样例】 4
3 3
30
10
1 2
【输出样例】
5.00
【样例说明】输入数据表示了如图所示的四边形。
其面积为5.00。
提示:求三角形面积可用海伦公式,求平方根可用<math.h>头文件中定义的sqrt函数。
【评分标准】结果完全正确得20分,每个测试点4分。
提交程序名为:points.c。
6. 【问题描述】
对输入的一篇文档,统计出现的所有单词及其所在行号和列号,即生成类似于词典的单词索引。
将其结果以规定格式输出。
【输入形式】
程序从文件crossin.txt读入一篇文档。
该文档由若干行组成,每行中包含一系列单词。
行号和列号由1开始计数。
该文档中单词总量不确定,每个单词长度最大不超过100个字符。
【输出形式】
将输入文档中所有出现的单词及其所在行号和列号输出到文件crossout.txt中。
输出有若干行,每一行都是文档中出现的一个单词。
按如下规格输出:
word:(line1,colm1),(line2,colm2), … ,(lineN,colmN)
其中word是单词,后面紧跟一个冒号,然后是以逗号隔开的出现的行号和列号
(line1,colm1),(line2,colm2),等等。
在该行上各字符紧密输出,不使用空格分隔。
在输出时遵循以下规定:
1. 只输出所有由英文字母(包括连字符)构成的单词,数字或包含其它特殊字符的单词不用输出,而且连字符不能作为单词首字符。
先输出大写A—Z开头的字符,再输出小写a—z开头的字符。
2. 各单词后面的行号和列号从小到大排列。
3. 统计的单词不包括如下四个单词:
a
an
the
and
【样例输入】
Alcatel provides end-to-end solutions.
It enables enterprises to deliver content to any type of user.
lcatel operates in 130 countries.
Alcatel focus on optimizing their service offerings and revenue streams.
【样例输出】
Alcatel:(1,1),(4,1)
It:(2,1)
any:(2,46)
content:(2,35)
countries:(3,24)
deliver:(2,27)
enables:(2,4)
end-to-end:(1,18)。