以前介绍数据类型都是基本类型[如int.pptVIP

  • 3
  • 0
  • 约3.29千字
  • 约 23页
  • 2017-04-27 发布于四川
  • 举报

以前介绍数据类型都是基本类型[如int.ppt

以前介绍数据类型都是基本类型[如int

第七章 数组;如: 下面介绍数组的定义与使用方法 §7.1 一维数组的定义和引用 7.1.1 一维数组的定义 定义形式为: 类型说明符 数组名[常量表达式];;如: int a[10]; 它表示由10个整型变量构成的一个数组,数组名为a,共有十个元素。 说明: 1、数组名是个标识符。 2、数组名后是方括号。 3、常量表达式表示元素的个数,即数组长度,例中表示a中共有10个元素,分别是a[0],a[1],…,a[9]。注意C规定下标从0开始,增量为1。;4、常量表达式是由常量构成的,不能有变量。 7.1.2 一维数组元素的引用 数组必须先定义后使用 C规定只能逐个引用数组元素而不能一次引用整个数组。 数组元素表示为: 数组名[下标] 下标可以是整型常量或整型表达式。;例: main() { int i,a[10]; for(i=0;i=9;i++) a[i]=i+1; for(i=9;i=0;i--)printf(“%d”,a[i]); } 7.1.3 一维数组的初始化 在编译阶段进行;1、在定义数组时实现,如 int a[10]={1,1,1,1,1,0,0,0,0,0}; 初值依次放在花括号中。 2、可以给部分元素赋初值 int a[20]={1,1,1,1,1}; 3、全部赋零 如: int a[10];;4、在对全部元素赋初值,可不指定长度。 int a[]={1,1,1,1,1,0,0,0,0,0}; 编译程序会计算出数组的长度。 等价于: int a[10]={1,1,1,1,1,0,0,0,0,0}; 7.1.4 一维数组程序举例 分析下列程序的执行结果;main() { int i; int f[20]={1,1}; for(i=2;i20;i++) f[i]=f[i-2]+f[i-1]; for(i=0;i20;i++) { if(i%5==0)printf(“\n”); printf(“%d”,f[i]);} } ;例:用冒泡法对10个数进行排序 for(j=1;j=9;j++) for(i=1;i=10-j;i++) if(a[i]a[i+1]) {t=a[i];a[i]=a[i+1];a[i+1]=t;};§7.2 二维数组的定义和引用 7.2.1 二维数组的定义 定义形式为: 类型说明符 数组名[常量表达式] [常量表达式]; 例如: float a[3][4],b[5][10]; C语言中,二维数组按行存放 多维数组说明及元素排列顺序:第一维变化最慢,最右边下标变化最快;7.2.2 二维数组的引用 形式为: 数组名[下标][下标]   int a[3][4];     : a[2][3]=4;    a[3][4]=3; 分析其中的两个问题:一是下标与说明;二是越界问题 7.2.3 二维数组的初始化 方法为:;1、分行给二维数组赋初值 int a[2][3]={{1,2,3},{4,5,6}}; 2、按数组排列的顺序对各元素赋初值 int a[2][3]={1,2,3,4,5,6}; 3、可以对部分元素赋初值 int a[2][3]={{1},{4}}; 4、给全部元素赋初值,定义数组时第一维的长度可以不定,但第二维要定 int a[][3]={1,2,3,4,5,6};;7.2.4 二维数组的举例 有一个3×4的矩阵,编程序找最大值并给出行列号。 §7.3 字符数组 7.3.1 字符数组的定义 用于存放字符的数组为字符数组。字符数组中的一个元素存放一个字符 例如: char c[10];;由于字符型与整型是互相通用的,因此定义也可改为 int c[10]; 7.3.2 字符数组的初始化 参照书中有关内容 7.3.3 字符数组的引用;main() { char d[][5]={{‘ ’, ‘ ’,’*’},{‘ ’,’*’,‘ ’, ’*’}, {’*’,‘ ’,‘ ’,‘ ’,’*’}, {‘ ’,’*’,‘ ’,’*’}, {‘ ’,‘ ’,’*’}}; int i,j; for(i=0;i5;i++) {for(j=0;j5;j++) printf(“%c”,d[i][j]); printf(“\n”);} };7.3.4 字符串和字符串结束标志 在C语言中,字符串用一维数组来处理。 char

文档评论(0)

1亿VIP精品文档

相关文档