数据的组织结构.ppt
《数据的组织结构.ppt》由会员分享,可在线阅读,更多相关《数据的组织结构.ppt(59页珍藏版)》请在第壹文秘上搜索。
1、整理课件1第第4 4章章 数据的组织结构(一)数据的组织结构(一) 4.3 字符串的组织 4.2 利用一维数组组织数据的应用实例 4.1 数组类型 4.4 常用的字符串标准函数及应用实例 4.5 二维数组 整理课件24.1 4.1 数组类型数组类型 数组类型的应用背景(1)同时存在若干个用来描述同一性质且不同个体的数据(同质数据同质数据)。(2)只有将这些数据组织在一起形成批量数据批量数据,共同参与处理,很多操作才具有实际意义。v例如:在某个部门中,需要由全体职工推选一名办公室主任。假设有10名候选人准备参与竞选。希望编写一个程序,统计每个候选人的得票数量及选举结果。 整理课件3 一维数组类型
2、的定义 l定义格式: ;例如: int vote10; lC语言规定:数组的下标从0开始,因此,表示这10个数据的下标为09 l变量一经定义,系统就要为它分配相应的存储空间。在C程序中,系统将会为每个数组型变量分配一片连续的存储空间,所需要分配的存储空间总数将取决于包含的元素个数和每个元素需要的存储空间。 整理课件4 一维数组的初始化l基本格式为: =,.,;l例如:float score5 = 9.2, 9.1, 8.7, 9.1, 8.5; 整理课件5说明:1)为数组型变量中的每一个元素都提供了一个初始值。此时,可以省略方括号内的数组元素数量。系统将根据花括号中包含的初值数目推测出数组含有
3、的元素数量。 float score = 9.2, 9.1, 8.7, 9.1, 8.5; 2)对数组型变量的前面若干个元素赋予初值。此时可以使用下面这种书写形式: int letter26 = 10, 9, 8, 7; 它的执行结果是:将10、9、8、7分别赋予letter数组中下标为0、1、2、3的元素,后面的所有元素赋予初值0。 3)将数组型变量中的每一个元素赋予初值0。此时,可以使用下面这种简化的书写形式: int vote10 = 0;整理课件6一维数组元素的引用及基本操作数组元素的引用l 数组的赋值l利用赋值语句为数组赋值 for (i=0; i10; i+) votei = 0;
4、 l调用标准输入函数为数组赋值 for (i=0; i13; i+) scanf(“%f”, &scorei); 数组的输出 for (i=0; i10; i+) printf(“%5d”, votei); 整理课件7 按照条件对数据进行筛选 l在遇到的许多问题中,经常需要从众多的数据中挑选出来满足一定条件的数据,这就是数据的筛选操作。在C程序中,参与筛选操作的批量数据可以采用一个一维数组型变量组织,筛选的条件用逻辑表达式表示。 4.2 4.2 利用一维数组组织数据的应用实例利用一维数组组织数据的应用实例整理课件8例1:在某个公司中,计划由职工们推选一名办公室主任。假设有10名候选人准备参与竞
5、选。希望编写一个程序,输入一组选举人的投票信息,统计每个候选人的得票数目及选举结果。 问题分析l用一维数组记录每位候选人的得票数量。l投票通过循环输入介于110之间的整型数值来模拟的。例如,输入3代表某个职工选举编码为3的候选人。 l找出最多的得票数量之后,从所有的候选人中筛选出得票数量与最高得票数量相同的人。整理课件9 算法描述 开始 职工投票 输出得票最高的所有人选 计算最高得票数量 输出选票 结束 整理课件10#include #define NUM 10 /* 候选人人数候选人人数 */main( ) int voteNUM = 0; int code, i, winner; /* 职
6、工投票职工投票 */ printf(nEnter your selection:n); do scanf(%d, &code); if (codeNUM) /* 检验输入的编码是否有效检验输入的编码是否有效 */ printf(nInvalid vote.); else if (code!=0) votecode-1 = votecode-1+1; /* 累加票数累加票数 */ while (code!=0);程序代码整理课件11/* 输出选票输出选票 */ printf(n The amount of votes is :); for (i=0; iNUM; i+) printf(%4d,
7、votei); /* 计算最高得票数量计算最高得票数量 */ winner = 0; for (i=1; ivotewinner) winner = i; /* 输出得票最高的所有候选人输出得票最高的所有候选人 */ printf(nThe winner :); for (i=winner; iNUM; i+) if (votei=votewinner) printf(%3d,i+1); 整理课件12 根据需求对数据进行统计 l为了满足特定的需要,对一组数据的某些特征进行统计是一项经常遇到的基本操作。例如,统计一段文本中某个字符出现的频率;统计学生考试的平均成绩等等都属于统计操作。统计操作的结
8、果往往是通过对所有数据进行扫描、判断或综合加工得到的。在C程序中,参与统计操作的批量数据可以用一维数组来组织,具体统计过程可以通过逻辑判断、累计、算术运算等基本操作手段实现。 整理课件13例2:在一段文本中,可能会出现各式各样的字符。编写一个程序,从键盘读入一行文本,完成统计每个英文字母出现频率的操作。 问题分析l用一维数组构造26个用于记录每个字母出现次数的累加器。 l对于输入的文本字符,可以在读取时检查一下是否为英文字母,而不需要将其存储起来。 整理课件14 算法描述 开始 ch=getchar() 输出统计结果 相应累加器加 1 结束 是大写 是小写 相应累加器加 1 ch!=n Y N
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 组织 结构
