第6章+数组 C语言大学实用教程课件 苏小红

第6章+数组 C语言大学实用教程课件 苏小红

ID:43509726

大小:7.88 MB

页数:73页

时间:2019-10-09

第6章+数组 C语言大学实用教程课件 苏小红_第1页
第6章+数组 C语言大学实用教程课件 苏小红_第2页
第6章+数组 C语言大学实用教程课件 苏小红_第3页
第6章+数组 C语言大学实用教程课件 苏小红_第4页
第6章+数组 C语言大学实用教程课件 苏小红_第5页
资源描述:

《第6章+数组 C语言大学实用教程课件 苏小红》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第6章数组哈尔滨工业大学计算机科学与技术学院苏小红sxh@hit.edu.cnC语言大学实用教程内容提要数组类型;向函数传递一维数组和二维数组;常用算法:排序、查找、求最大最小值等;用字符数组存取字符串;使用字符串处理函数处理字符串C提供了一组基本类型:int、double等。除了基本数据类型,还有一些组合的数据类型,称为构造数据类型。(书上18页)构造机制包括数组、指针、结构、联合。可用它们组合数据对象,作为整体使用。组合的数据对象称为复合数据对象。复合对象形成的类型称为复合数据类型,组成部分称为成分/成员/元素。可创建能存放复合类

2、型数据的变量。这种变量可作为整体使用,通过名字可以访问整个复合对象。也可以访问复合数据对象的成分,如:使用成分的值或给成分赋值。本章介绍数组就是常见的组合机制。数组的用处保存大量同类型的相关数据的问题-例如,输入全班30个学生的成绩,并排出名次。-例如,矩阵运算,表格数据等。为什么使用数组例子:要读入某班全体50位同学某科学习成绩,然后进行简单处理(求平均成绩、最高分、最低分……)若用简单变量,需50个不同变量名,要用很多个scanf命令intscore1,score2,…score50;scanf("%d,%d,%d",&score

3、1,&score2,&score3);scanf("%d,%d,%d",&score4,&score5,&score6);而用数组,可共用一个scanf命令并利用循环结构读取intscore[50],i;for(i=0;i<50;i++){scanf("%d",&score[i]);}保存大量同类型的相关数据6.1数组的概念、定义和使用数组(array)是多个同类型数据对象的组合。一个数组汇集了多个数据项,数组元素。可从数组出发处理各元素,以统一方式处理一批/所有元素,是数组和一组独立变量的主要区别。为此需要:数组描述,数组变量定义数

4、组使用,包括通过数组变量使用其元素数组实现,数组的存储方式数组变量定义定义数组变量(定义数组)时需说明:数组元素类型数组(变量)的元素个数元素个数也称数组大小或长度。定义数组变量时,方括号内整型表达式说明元素个数,表达式应用静态确定值,可用字面量或枚举常量。例,定义两个数组:inta[10];doublea1[100];数组定义可以与其他变量定义写在一起,如:inta2[16],n,a3[25],m;定义存储类型数据类型数组名[整数1][整数2]……[整数n];a[9]a[8]a[7]a[1]a[0]…数组首地址inta[10];定义

5、一个有10个int型元素的数组系统会在内存分配连续的10个int空间给此数组直接对a的访问,就是访问此数组的首地址使用a[0]、a[1]、a[2]、……、a[9]这样的形式访问每个元素。可以像使用普通变量一样使用他们。数组(Array)的实现数组大小最好用宏来定义,以适应未来可能的变化#defineSIZE10inta[SIZE];数组大小定义好后,将永远不变#include#defineSIZE10main(){inta[SIZE];……}也可定义外部数组和局部静态数组(用static)。作用域与存在期与简单变量相

6、同。数组的外部说明不必描述数组大小。例:externinta[];externdoublea1[];下面函数里数组定义不合法:voidf(intm,intn){intb[n];/*非法,编译时无法确定大小*/....}新C99标准支持这种定义,满足C99的编译器很少根据数组的数据类型,为每一元素安排相同长度的存储单元根据数组的存储类型,将其安排在内存的动态、静态存储区或寄存器区用sizeof(a)来获得数组a所占字节数short数组的存储结构一维数组占用字节数=数组长度×sizeof(基类型)数组使用基本操作是元素访问。元素顺序编号,

7、首元素序号0,其余顺序编号。n元数组元素编号是0到n-1。定义:intb[100];元素编号为0、1、2、…、。称为下标或指标。元素访问通过[]运算符,优先级最高,运算对象是数组名和括号里表示下标的表达式。表达式、语句里的b[3]称为下标表达式。例:有上面定义后,可写:b[0]=1;b[1]=1;b[2]=b[0]+b[1];b[3]=b[1]+b[2];99数组意义在于能以统一方式描述对一组数据的处理。下标表达式可用一般的整型表达式。如:b[i]=b[i-1]+b[i-2];访问哪个元素由i值确定。同一语句可访问不同元素,可用在循环

8、里访问一批元素。for(i=0;i<100;++i){b[i]+=a1[i]*a2[i];}/*假设数组都有定义*/循环中涉及到300个基本数据对象。对数组的多个或全部元素操作,常用for语句。令变量遍历数组下标:for

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。