- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《程序设计基础04章-数组和结构》.ppt
第四章 C语言数据类型 基本数据类型: 整型、浮点型、 字符型 构造类型: 数组、 结构、 联合、 枚举 基本数据类型的特点 变量是单值的,由变量名直接访问; 数据是不可再分的原子类型 构造类型的特点: 由多个分量组成的数据结构 每个分量都是一个变量(简单变量或构造变量) 其数据难以用变量名直接整体访问 本章内容要点 一维数组 二维数组 字符数组 结构 结构数组的概念和定义 4.1 一维数组 例 要求输入计算机10个同学的外语成绩,并按与输入相反的次序显示外语成绩。 方法一:可以用10个变量 分别取名为score1,score2,……,score10来存储10名学生的外语成绩。 方法二:使用数组,方便、扩展性好 数组特点 相同性质的一组数据的组合: 数组元素数据类型相同 数组元素个数确定 4.1.1 一维数组的定义 类型定义符 数组名[常量表达式]; 如: int score[10]; score数组包含有10个整型数据成员 (数组元素) 数组的存储 C语言中数组元素是由数组下标的索引值进行标注的。第一个元素的索引值是0。 图中add代表数组第一个元素在内存中的位置,由于数组元素均是int型,假设,每个数组元素都占用4字节,数组score共占用40字节的内存空间(按照字节编址) int score[10]; 数组名使用标识符表示; 用方括号将常量表达式括起; 常量表达式定义了数组元素的个数; 数组下标从0开始。 4.1.2 一维数组元素的引用 通过下标来对数组元素进行访问 用下标引用一维数组中元素的格式为 数组名[下标] 下标可以是常量、变量或表达式 下标必须是整型数 其取值范围为0到数组长度减1 每个下标变量当作一个单独的变量对待 注意 C语言不检查数组边界?,在运行和编译时也可能没有任何错误提示; int score[10]; score[-1]=200; score[10]=1000; 程序员应该自己进行边界检查 数组与循环 通常使用循环结构对数组进行处理 for(i=0;i10;i++) scanf(“%d”,score[i]); for(i=9;i=0;i--) printf(“%d ”, score[i]); 计算fibonacci数列的前15个数 0 1 1 2 3 5 8 13 21 34 55 89…377 int f[15], i; f[0]=0; f[1]=1; printf(“%6d%6d”,f[0],f[1]); for(i=2;i15;i++) { f[i]=f[i-1]+f[i-2]; printf(”%6d”,f[i]); } 4.1.3 一维数组的初始化 在定义数组的同时可以初始化数据: 类型说明符 数组名[常量表达式]={数值表}; 如: int a[5]={1,2,3,4,5}; float b[3]={3.14, 3.141, 3.1415}; 1. 给全部数组元素赋初值。 int score[3]={78,89,98}; 2. 给部分元素赋初值;自动给后面的元素补上初值0。 int score[5]={78,89,98}; 3. 初值的个数大于数组长度,出错。 4. 初值的个数与数组长度相等,在定义数组时,可以省略数组的大小 int score[ ]={78,89,98}; 4.1.4 一维数组程序举例 例4.2 求200以内的所有素数。 经典算法—Eratasthenes筛选法: 筛去合数,留下素数 筛选法 1) 取最小的数2,它是素数,同时筛去它的所有倍数; 2) 取未筛去的数中最小者,它是素数,同时筛去它的所有倍数; 3) 重复步骤2),得到所有素数。 使用数组,数组下标就是0~200 数组元素的值作为筛去与否的标志 设数组元素的初值为0(代表对应整数都被假定为素数),然后筛去合数,也即将对应数组元素值变为1。 #include math.h #define MAX 200 void main( ) { int prime[MAX+1]={0}; int d
文档评论(0)