文档详情

[2018年最新整理]18一维数组的定义,赋值,遍历.ppt

发布:2018-02-17约4.51千字共29页下载文档
文本预览下载声明
一维数组 主要内容 一维数组的定义 一维数组元素的引用 一维数组的初始化和赋值 一维数组的遍历 一维数组元素的查找 一维数组元素的排序 一维数组的定义 一维数组的定义 定义数组的语法: int a[10]; 数据类型说明符 数组名[数组长度]; 一维数组的定义举例 一维数组元素的引用 一维数组元素的引用 一维数组的初始化和赋值 一维数组的初始化 定义数组之后,与普通变量一样,数组是沒有初始值的,各存储单元的值都是不定的 初始化:定义数组的同时赋初值 语法: 数据类型说明符 数组名[长度]={数值1,数值2,…}; 如 : int data[5]={1,2,3,4,5}; 一维数组的初始化 初始化注意事项: (1) 允许初始化一部分元素,其他没有赋初值的元素初值为0; int a[5]={1,2}; 相当于 int a[5]={1,2,0,0,0}; (2)允许初始化时省略数组的长度,数组的长度为赋初值的个数; int a[]={1,2,3,4,5}; 相当于 int a[5]={1,2,3,4,5}; (3)不能对整个数组初始化; int data[5]=1; 错误,应为: int data[5]={1,1,1,1,1}; 一维数组的赋值 数组的赋值只能对数组元素单独操作,不能对数组整体操作。 赋值的两种方式:int a[5]; 赋值运算符 如:a[3]=8; 输入函数 如:scanf(“%d”,a[3]); 例:a={1,3,5,7,9}; 错误,应单独为每个元素赋值 例:a=1; 错误,应单独为每个元素赋值 对数组的整体赋值只能在初始化时进行 一维数组的遍历 从键盘输入5个整数,保存到数组a中;再逆序输出。 从键盘输入5个整数,保存到数组a中;再逆序输出。 一维数组的遍历 数组的遍历一般用循环语句实现 注意下标的取值范围,不能越界(编译系统对下标的越界不做检查) 讲解-数组名作函数参数 #include stdio.h void outputScore(int score[],int length); //函数声明 main() { int score[10]={1,2,3,4,5,6,7,8,9,10}; outputScore(score,10); //函数调用 } void outputScore(int a[ ],int length) //函数定义 { int i=0; printf(学生成绩如下:\n); for(i=0;ilength;i++) printf(%d %-3d\n,i+1,a[i]); printf(\n); } 课堂练习: 1.从键盘输入10个整数保存到数组中,求平均值并输出。 #include stdio.h float average(int b[],int length); main() { int a[10],i; float result; printf(请输入10个整数:\n); for(i=0;i10;i++) { scanf(%d,a[i]); } result=average(a,10) printf(“平均值=%f\n,result); } 课堂练习 2.模仿上例,求该数组中最大的那个数,并且输出。 课堂练习 1、新建一个项目,建立一个能存放100个数据的数组,为该数组赋值,赋值采用循环语句,元素值为:数组下标×2,然后按正序和逆序输出 定义输入函数:int input(int a[], int len); 定义正序输出函数:int outz(int a[], int len); 定义逆序输出函数:int outn(int a[], int len); 编写main函数调用上述函数,实现输入和输出 课堂练习 2. 修改上例: 要求输出数组元素中所有5的倍数,怎么做? 课堂练习 3. 修改上例,要求实现求数组元素中所有下标为偶数的元素的和怎么做? 小结 数组的定义、初始化、引用、输入、输出概念、操作必须掌握 数组下标从0开始 数组名代表数组首地址,是一个常量 C语言不允许动态定义数组,即定义数组时数组长度表达式不能含有变量 数组元素与普通变量具有相同属性,可以进行算术运算和比较大小等操作 一维数组元素的查找 一维数组元素的查找 思路与实现:利用循环遍历数组中的元素,在遍历的过程中比较要查找的数与数组元素是否相等,若相等,输出下标,若到数组末尾都未找到,则显示没有找到。 一维数组元素的查找 一维数组元素的查找 练
显示全部
相似文档