C语言编程:实现单词长度直方图与垂直图练习1-13
需积分: 50 65 浏览量
更新于2024-09-11
收藏 1KB TXT 举报
在本练习中,你需要使用C语言编写一个程序,目的是创建两个类型的直方图:一个是单词长度的水平直方图,另一个是垂直直方图。该程序的目标是统计用户输入的单词中每个长度出现的次数,并以图形形式展示这些频率分布。
首先,让我们分析程序结构。`#include<stdio.h>`引入标准输入输出库,用于与用户交互。接下来,定义了一些字符常量,如`SIZE27`,用于数组大小限制,`WORD`用于表示单词,而`DG1-DG6`则是用于垂直直方图的特殊字符。
在`main()`函数中,程序初始化了数组`nw`,用于存储单词长度的计数,`nc`用于计数当前单词的字符数量,`z`用于判断是否在单词内部,`i`和`j`分别用于遍历数组和绘制直方图。用户通过`getchar()`函数输入单词,当遇到空格或换行符时,程序会统计单词长度并更新`nw`数组。
水平直方图部分,通过`for`循环遍历`nw`数组,打印出每个长度以及其对应的单词数量(`k`)。例如,`printf("%2d%4s%3d:",j+1,WORD,k)`显示单词编号、单词名和长度,然后用空格填充直到达到固定宽度。
垂直直方图则更为复杂,通过嵌套的`for`循环实现。外层循环`j`从数组大小减1到0,内层循环`k`遍历数组查找等于`j`长度的单词。如果找到,使用`DG3`字符表示,然后递减该位置的计数,否则打印`DG4`。这样,每一行代表一个单词长度,列上不同的字符表示该长度出现的次数。最后,添加分割线和结束字符。
总结,这个练习要求学生掌握如何在C语言中处理用户输入,统计数据,以及如何利用循环和条件语句实现直方图的绘制。这涉及到了字符串处理、数组操作以及控制流的运用。完成此练习有助于提升编程技能,特别是对C语言数据结构和输出格式化的理解。
2012-05-10 上传
2019-04-05 上传
2023-05-26 上传
2023-05-26 上传
2023-05-26 上传
2023-05-26 上传
2023-05-15 上传
2023-03-08 上传
c_cql
- 粉丝: 9
- 资源: 1
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦