- 1、本文档共65页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言程序设计ppt-台第8章-数组
华中科技大学计算机学院 C语言程序设计 第8章 数组 一维数组的声明、初始化和使用 数组的运算、作为函数参数的使用 字符串 、多维数组 8.1 数组概述 程序=算法+数据结构 PASCAL程序设计语言发明者Niklaus Wirth曾经说过 简单数据类型的变量 仅能描述一个单独的数据 描述能力十分有限 如何描述一群有联系的数据集合? 数组 属于构造类型 是相同数据类型数据的集合 元素 组成数组的这些数据 任何类型(简单类型、构造类型) 8.1 数组概述 数组特点 其所有元素数目固定 其所有元素类型相同 其所有元素顺序存放 数组作用 集中管理 将相关的同类型数据集中用一个标识符(数组名)表示 元素顺序存放,但可随机定位 用若干个数字序号(下标)来区别各数组元素 例如定义float score[30],可表述30位学生成绩 用数组具有什么好处? 8.1 数组概述 问题 计算全班30位同学某门课程的平均成绩 解决方法 设置30个float型变量来记录成绩 设置一个有30个float型元素的数组来记录成绩 问题分析 参与运算的平均成绩,其数据类型都相同(符合数组特点) 30位同学属于一个班,用数组可把30个成绩表示成一个整体 用数组的优点 便于循环处理 提高效率,便于书写、检查、修改(对海量数据效果更明显) 8.2 一维数组 维数 标识一个数组元素所需要使用的下标的个数 一维数组 只有一个下标 可用于表示一个线性的数据队列 使用数组的要求 先声明数组 对它进行初始化,然后才能使用 8.2.1 一维数组的声明 要解决三个问题 确定数组的数据类型 给数组定义一个名字,以便在程序中使用 指明数组的大小,即数组中元素的个数 声明形式 [存储类型说明符] [类型修饰符] 类型说明符 数组名[常量表达式]={初值表}; 存储类型说明符:extern、static 类型修饰符:const、volatile 数组名:是一个标识符,是一个地址常量,用以表示数组中打头元素的地址 8.2.1 一维数组的声明 例8.1 具有基本数据类型的一维数组的声明 #define SIZE 10 int array[5]; double d[5],e[SIZE]; char name[SIZE*5]; 错误例子 unsigned int size; char str[size],buffer[2*size]; 错误原因 数组的大小一经说明就不能改变 长度说明不是常量表达式,在编译之前就必须明确确定 8.2.1 一维数组的声明 例8.2 采用类型修饰符的一维数组的声明 static int y[10]; 数组y中的每一个成员都是静态整型成员 extern double s[2]; 作了一个外部双精度型数组的引用性声明 应该在另外的源文件中通过double s[2];来定义s数组,这样第2个声明语句才有意义 8.2.2 一维数组的使用 C提供的各种操作符 针对基本数据类型的变量 数组 是构造数据类型 但其元素是基本数据类型的变量 访问数组 不需设计专门的数组操作符 方法:数组名[下标表达式] 例int a[5], j=2; 5个元素依次是a[0],a[1],a[2],a[3],a[4] a[j+2] 、a[++j] 、a[j--]、a[5*j-7] 错误写法:a[j-3] 、a[2*j+1] 例8.3 使用一维数组计算学生的平均成绩。 #include 〞stdio.h〞 void main(void) { int score[30],i,sum=0; double average; printf(input the scores please:\n); for(i=0;i30;i++) scanf(“%d”,score[i]); /* 将键盘输入的成绩赋给各个数组元素 */ for(i=0;i30;i++) sum+=score[i]; /* 求学生成绩的累加和 */ average=sum/30.0; /* 计算平均成绩 */ printf(sum=%d\n,sum); printf(average=%lf\n,average); } 8.2.3 一维数组的初始化 显式初始化值的个数与说明长度相同 int x[5]={0,1,2,3,4}; int y[5]={0,1,2,3,4,5}; 错误:初值个数大于数组长度 有初始化值时,长度说明可缺省 数组长度由初值个数确定 int y[]={1,2,3,4,5,6,7,8}; 初始化值的个数可以小于说明长度,
您可能关注的文档
- c网基站工程重点工艺、标签、空安全等相关要求.pptx
- c学习方法若与目标.ppt
- c语句和流呃程控制.ppt
- c语言 但课件第5章.ppt
- c语言 课件文第1章.ppt
- c语言1数的存肉储形式.pptx
- c语言05c拉程序流程设计.ppt
- c语言2013课件品—(第1讲).ppt
- c语言ppt谭浩强教材配套吧版第5章.ppt
- c语言ppt谭怕浩强教材配套版第7章.ppt
- 2025年中国电子书阅读器行业发展潜力分析及投资方向研究报告.docx
- 2025手术室专科理论考试试题及答案 .pdf
- 2025护师考试外科护理学练习题及答案2025 .pdf
- 2025-2031年中国能效管理平台行业市场全景分析及投资战略规划报告.docx
- 2025年中国超级电容器行业发展潜力分析及投资方向研究报告.docx
- 2025年中国智能家居控制系统行业市场调研及投资战略研究报告.docx
- 中国云数据中心应用行业发展监测及发展趋势预测报告.docx
- 中国深圳家装行业市场全景评估及发展战略规划报告.docx
- 中国时间温度指示剂行业发展前景预测及投资战略咨询报告.docx
- 2024-2030年中国NB-IOT网络行业发展运行现状及投资潜力预测报告.docx
最近下载
- 信号与系统(第三版)上下册郑君里课后习题答案详解.pdf
- 江西农业大学2021-2022学年第1学期《高等数学(上)》期末考试试卷(B卷)及标准答案.pdf
- 施工组织设计-江城水泥混凝土土.doc VIP
- 山西农业大学2021-2022学年第1学期《高等数学(上)》期末考试试卷(A卷)及标准答案.pdf
- 八年级上语文 《红星照耀中国》纪实作品人教PPT课件优质课比赛公开课获奖.ppt
- B2C电子商务信任实证研究的现状与思考.doc
- 有理数乘方练习题.doc VIP
- 经典电动力学-北京大学物理学院.PDF
- 幂的乘方与积的乘方-练习题(含答案) .doc VIP
- 政府采购非招标方式概述 .ppt VIP
文档评论(0)