欢迎来到天天文库
浏览记录
ID:39930293
大小:230.50 KB
页数:24页
时间:2019-07-15
《第8章_常用构造类型(二)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第8章常用数据表达本章重点:●常用的数据类型●宏的定义与应用●数组的定义和使用●指针的定义和使用●结构体的定义●枚举与定义类型●指针和数组●返回值为指针的函数●指向函数的指针本章难点●数组的含义与数组名的理解●结构体类型与结构体变量的区别●结构体变量对结构体成员的引用●指针在数组中的应用●指针数组与数组指针本章学习建议:除了前面章节涉及的基本数据类型:int、float、double、char外,C语言还提供了构造类型的数据。本章让读者初步认识数组类型、结构体类型、数组指针和指针数组等概念,掌握一维数组和结
2、构体的定义及应用,掌握指针在一维数组中的应用,了解指针数组与数组指针的概念。(4课时)8.1数组数组是一种用户自定义的构造类型,是有序数据的集合。在C语言中的程序设计过程中,数组的应用是非常普遍的,许多问题不用数组几乎难以解决。数组有以下主要特点:(1)每个数组中的元素类型必须一致。(2)用不同的下标来区分数组的元素。(3)数组在内存中占有连续的存储单元,数组名表示数组在内存中的首地址。(4)数组和指针有着极密切的联系,可以通过指针移动来对数组元素进行操作。8.1.1一维数组1.一维数组的定义类型说明符数组
3、名[整型常量表达式];类型说明符表示数据存放的类型,整型常量表达式为数组下标,表示数组元素的个数。例如:inta[5];它表示定义5个元素的整型数组,数据名为a,a也是这5个元素存储区的首地址,因而a的地址值不能改变。例8.1数组及数组元素的表示方法步骤1:在VisualC++环境下新建文件可用[开始]→[程序]→[MicrosoftVisualC++6.0]→[MicrosoftVisualC++6.0]→[文件]→[新建]→[文件]→[C++SourseFile],输入文件名8-1.c#include<
4、stdio.h>intmain(){inti,a[10]={1,2,3,4,5,6};/*定义一个整型数组,数组名为a,并给数组初始化*/for(i=0;i<10;i++)printf("a[%d]=%-4d",i,a[i]);/*a[i]为数组的第i个元素*/printf("");return0;}步骤3:点击编译图标,编译程序8-1.c步骤4:点击执行图标,执行程序8-1.c,此程序执行后在屏幕上输出a[0]=1a[1]=2a[2]=3a[3]=4a[4]=5a[5]=6a[6]=0a[7]=0a[
5、8]=0a[9]=0参照例8.1,请注意下列问题。注意:(1)数组名的命名方法与变量名相同,遵循标识符命名规则。(2)常量表达式表示数组元素的个数,即数组的长度,数组的下标从0开始,下标的最大值为:常量表达式-1。例如,在inta[5];中数组a的5个元素分别表示为:a[0]、a[1]、a[2]、a[3]、a[4]。(3)常量表达式中可以包括常量和符号常量。(4)C语言不允许对数组作动态定义。例如:intn;scanf("%d",&n);inta[n];以上程序段是错误的,它对数组大小作了动态定义。2.一维
6、数组的引用、初始化与赋值C语言规定不能一次引用整个数组,引用时只能对逐个元素进行引用。如何给一维数组赋值呢?可以有三种方法:(1)数组的初始化;(2)程序中赋值;(3)键盘中读入。(1)数组的初始化。数组的初始化,只有静态或外部数据可赋一个最初的值。对数组初始化可以用以下方法实现:①在定义数组时对数组元素可赋以初值。如:staticinta[10]={0,1,2,3,4,5,6,7,8,9};经过上面的定义和初始化后,它相当于:a[0]=0,a[1]=1,a[2]=2,a[3]=3,a[4]=4,a[5]=
7、5,a[6]=6,a[7]=7,a[8]=8,a[9]=9。②初始化时可以只对一部分元素赋初值。例如:staticinta[10]={0,1,2,3,4};定义的数组有10个元素,但只对其中前5个元素赋了初值,后5个元素的初值为0。③如果想使一个数组的元素值全部为0,可以用下面的方法:staticinta[10]={0};即使对static型的数组不赋初值,系统也会对所定义的数组的所有元素自动赋以0值。例题8.1验证了以上论述。④在对全部数组元素赋初值时,可以不指定数组长度。例如:staticinta[5]
8、={1,0,3,5,7};与staticinta[]={1,0,3,5,7};等效。注意:下列定义语句是不等效的:staticinta[10]={1,2,3,4};与staticinta[]={1,2,3,4};前者表示前4个元素的值分别为1、2、3、4,后6个元素数值为0;后者表示的数组只有4个元素。以上论述了如何给数组初始化,也可以在程序运行时给数组元素赋值,以下用实例来说明这个问题。(2)程序中给数组的元素
此文档下载收益归作者所有