《C语言课件二级》第6章数组.ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 数组  回顾 基本数据类型:int, float/double, char, void 数据的处理:根据问题需求,先作几个简单变量的定义,然后对这些变量赋值并作相应的运算即得结果 例如:输入10个数,求其平均值 问题的提出 一个人N门课的成绩怎样存储和处理? 一个班N门课的成绩怎样存储和处理? 如何从键盘输入100个数然后按相反顺序输出? ...... 本章主要内容 C 语言中数组的概念 一维数组 二维数组 用数组实现常用的算法 C 语言中的数组 数组是一组相同类型的数据组成的有限集合 数组是可以在内存中连续存储多个元素的结构 数组中的数据称为数组元素,数组元素个数称为数组长度 数组元素用数组名和元素下标表示,如score[0], score[1] 一维数组的定义 一维数组的定义 一维数组在内存的存放 数组下标从0开始 数组元素在内存中按顺序连续存放 数组名代表数组的首地址,即score的值与score[0]的地址值相同 数组元素的引用 C语言中,不允许引用数组进行运算,只能引用数组元素 基本形式: 一维数组的初始化 初始化:在定义数组时给数组元素赋初值 形式:数据类型 数组名称[数组长度]={数值列表} 在定义数组时,对全部数组元素赋初值: 例如:int a[5]={0,1,2,3,4}; 此时也可省略数组长度,例如:int a[ ]={0,1,2,3,4}; 在定义数组时,对部分数组元素赋初值: 例如:int a[5]={0,1,2}; 数组其余元素自动赋0 当初值的个数多于数组元素个数时,编译出错 例如:int a[5]={0,1,2,3,4,5}; int arr[]={ };? //错误,到底是几个元素? 一维数组的动态赋值和输出 一维数组示例 一维数组示例 数组类型 二维数组的定义 二维数组的存储结构 二维数组元素的引用 二维数组的初始化 二维数组的初始化 二维数组值的输入和输出 二维数组的输入和输出 二维数组示例 二维数组示例 二维数组示例 二维数组示例 总结 数组是由同一种数据类型的元素系列构成 数组元素按顺序在内存中连续存储,并通过使用数组下标(或索引)来访问,首元素的索引值为0 数组必须先声明,然后才能使用。声明一个数组只是为该数组留出连续内存空间,并不会为其赋任何值 一维数组定义:数据类型 数组名[数组大小] 二维数组可以看作是一维数组的数组 一维数组可用一个循环动态赋值,而二维数组可用二重嵌套循环动态赋值 C把数组名解释为该数组元素的首地址,并且C编译器不检查所引用的数组元素下标是否越界 数组应用举例 数组应用举例 数组应用举例 数组应用举例 课堂习题 已知 int a[10]={4,12,15,19,21};(已排序), 插入一个值x(设x=17)使其仍有序。 数组应用举例 产生随机数 随机数生成器:能随机生成0到RAND_MAX之间的整型数 。RAND_MAX在stdlib.h中定义,不大于双字节整数的最大值32767 产生[0,b-1] 之间的随机数:magic = rand()%b; 产生[a,a+b-1] 之间的随机数magic = rand()%b + a; 随机数种子(需包含头文件stdlib.h) 计算机产生的随机数称为伪随机数,它是根据一个算法计算出来的。 系统为每个程序、每次执行指定的随机数的种子都是相同的,因此程序每次执行生成的随机数序列都是相同的。 产生随机数 改变随机数的种子 设置种子的函数srand : srand (种子) 如何让程序每次执行时选择的种子都不一样呢:每次执行时选择的种子要不一样 选择系统时间为种子:time(NULL) 取当前的系统时间,需要包含头文件time.h。 数组应用举例 数组应用举例 选择法排序 选择法排序 数组应用举例 冒泡法排序 冒泡法排序 冒泡法排序 数组应用举例 数组应用举例 数组应用举例 【例7】打印10行金字塔杨辉三角 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 数组应用举例 作业 【1】向有序数组a[n](从小到大)插入一个整数x,使其仍然保持有序。 【2】随机产生一些整数保存在数组中,试用顺序查找方法查找某个整数,要求能多次反复查找,直到用户按

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档