欢迎来到天天文库
浏览记录
ID:50020404
大小:1.22 MB
页数:61页
时间:2020-03-07
《C语言程序设计教程 教学课件 作者 李丽芬 孙丽云 主编C语言第5章.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言程序设计第5章数组第5章数组5.1一维数组5.2二维数组5.3字符数组和字符串5.4常见错误分析引例求两个整数中的较小的那个。#includemain(){inta,b,x;//定义整型变量a,b,xprintf("Pleaseinputtwointegers:");//输出屏幕提示scanf("%d%d",&a,&b);//从键盘输入a、b的值x=a;//假设a是较大的数先赋给xif(a>b)x=b;//若a比b大,则b是较小的数,将b赋给xprintf(“较小的数是:%d",x);//输出结果}如果题目中要求大家找出10个整数中的最小
2、数呢,甚至100个整数中的最小数呢?为了解决这一问题,C语言引入了一个重要的数据结构——数组,它是具有相同数据类型的变量集合,这些变量具有相同的名字,但用不同的下标表明数据的位置,我们称这些变量为数组元素。5.1一维数组5.1.1一维数组的定义和引用例5-1要求从键盘中输入10个互不相同的整数,求其中的最小数并输出。10#include20main()30{40inta[10];/*定义数组a*/50inti,min;/*定义变量i和min*/60for(i=0;i<=9;i++)/*循环10次*/70scanf("%d",&a[i]);/*从键盘
3、输入数给数组元素赋值*/80for(i=0;i<=9;i++)/*循环10次*/90printf("%dt",a[i]);/*输出数组元素的值*/100min=a[0];/*给min变量赋初值*/110for(i=1;i<=9;i++)/*循环9次*/120if(min>a[i])130min=a[i];/*比较min与数组中的每个数的大小,将较小的赋给min*/140printf("Theminis%d",min);/*输出最小值*/150}程序表示数组a中有10个元素,且均为整型。5.1.1一维数组的定义和引用1.一维数组的定义在C语言中使用数组必须先进行
4、定义。定义方式:类型说明符数组名[常量表达式];(1)类型说明符是任一种基本数据类型或构造数据类型,即int、float、char等这些基本数据类型。从这里可以看出,数组是建立在基本数据类型的基础之上的,因此数组为构造类型。在上面的例子中int表示数组元素为整型数据。(2)数组名是用户定义的数组标识符。对于数组元素来说,具有一个共同的名字,即数组名,用标识符表示,上面例子中a为一维数组名。(3)方括号中的常量表达式表示数据元素的个数,也称为数组的长度。说明5.1.1一维数组的定义和引用1.一维数组的定义例如:floatb[10],c[20];定义实型数组b,有10个
5、元素,实型数组c,有20个元素。charch[20];定义字符数组ch,有20个元素。(1)数组的类型实际上是指数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。(2)数组名不能与其它变量名相同。(3)方括号中常量表达式表示数组元素的个数,如a[5]表示数组a有5个元素。但是其下标从0开始计算。因此5个元素分别为a[0],a[1],a[2],a[3],a[4]。(4)不能在方括号中用变量来表示元素的个数,但是可以是符号常数或常量表达式。注意事项例如:main(){inta;floata[10];……}是错误的。例如:#defineD5main(){
6、inta[3+5],b[4+D];/*合法的定义*/……}main(){intn=10;inta[n];/*不合法的定义,n为变量*/……}5.1.1一维数组的定义和引用2.一维数组元素的存储每个数组元素都占用内存中的一个存储单元,每个元素都是一个变量,可以像以前讲过的普通变量一样使用,只不过数组元素是通过数组名和方括号“[]”里的下标来确定的。系统为数组元素在内存中分配连续的存储单元。5.1.1一维数组的定义和引用2.一维数组元素的存储例如:定义语句inta[15];说明了以下几个问题:(1)数组名为a。(2)数组元素的数据类型为int整型数据。(3)数组元素的下
7、标值从0开始。数组元素的个数为15个,它们是:a[0]、a[1]、a[2]....a[13]、a[14](4)数组名a是数组存储区的首地址,即存放数组第一个元素的地址。a→&a[0];因此数组名是一个地址常量。不能对数组名进行赋值和进行运算。这个例子中数据元素的存储形式如图5-2所示。5.1.1一维数组的定义和引用3.一维数组元素的引用数组的引用就是对数组元素(数据)的读取操作。一维数组的引用格式:数组名[下标]说明(1)下标可以是常量或常量表达式,如a[3]、a[3+2]。(2)下标也可以是变量或变量表达式,如a[i],a[i+j],a[i++]。(3)下标如
此文档下载收益归作者所有