第八章函数二.ppt
《第八章函数二.ppt》由会员分享,可在线阅读,更多相关《第八章函数二.ppt(22页珍藏版)》请在三一文库上搜索。
1、第八章 函数(二),8.7 数组作为函数参数,8.8 变量的存储属性,8.7 数组作为函数参数,数组元素作函数实参值传递,例 两个数组大小比较,#include main() int a10,b10,i,n=0,m=0,k=0; printf(“Enter array a:n“); for(i=0;i10;i+) scanf(“%d“, ,int large(int x,int y) int flag; if(xy) flag=1; else if(xy) flag=-1; else flag=0; return(flag); ,n=0 m=0 k=0,a和b为有10个元素的整型数组 比较两数
2、组对应元素 变量n,m,k记录aibi, ai=bi, aik,认为数组ab 若nk,认为数组ab 若n=k,认为数组a=b,8.7 数组作为函数参数,数组名作函数参数 地址传递 在主调函数与被调函数分别定义数组,且类型应一致 形参数组大小(多维数组第一维)可不指定 形参数组名是地址变量,8.7 数组作为函数参数,例 求学生的平均成绩,#include float average(int stu10, int n); void main() int score10, i; float av; printf(“Input 10 scores:n“); for( i=0; i10; i+ ) sc
3、anf(“%d“, ,float average(int stu10, int n) int i; float av,total=0; for( i=0; in; i+ ) total += stui; av = total/n; return av; ,实参用数组名,形参用数组定义, int stu ,8.7 数组作为函数参数,例:数组元素与数组名作函数参数比较,#include void swap2(int x,int y) int z; z=x; x=y; y=z; main() int a2=1,2; swap2(a0,a1); printf(“a0=%dna1=%dn“,a0,a1)
4、; ,值传递,8.7 数组作为函数参数,#include void swap2(int x) int z; z=x0; x0=x1; x1=z; main() int a2=1,2; swap2(a); printf(“a0=%dna1=%dn“,a0,a1); ,地址传递,例 数组元素与数组名作函数参数比较,8.7 数组作为函数参数,例 数组排序-简单选择排序,main() int a10,i; for(i=0;i10;i+) scanf(“%d“, ,void sort(int array,int n) int i,j,k,t; for(i=0;in-1;i+) k=i; for(j=i+
5、1;jn;j+) if(arrayjarrayk) k=j; if(k!=i) t=arrayi; arrayi=arrayk; arrayk=t; ,9,49,i=0,8.7 数组作为函数参数,概述 变量是对程序中数据的存储空间的抽象,编译或函数调用时为其分配内存单元,10,程序中使用变量名对内存操作,8.8 变量的存储属性,变量的属性 数据类型:变量所持有的数据的性质(操作属性) 存储属性 存储器类型:寄存器、静态存储区、动态存储区 生存期:变量在某一时刻存在-静态变量与动态变量 作用域:变量在某区域内有效-局部变量与全局变量 变量的存储类型 auto -自动型 register-寄存器型
6、 static -静态型 extern -外部型 变量定义格式: 存储类型 数据类型 变量表;,如: int sum; auto int a,b,c; register int i; static float x,y;,8.8 变量的存储属性,局部变量与全局变量 局部变量-内部变量 定义:在函数内定义,只在本函数内有效 说明: main中定义的变量只在main中有效 不同函数中同名变量,占不同内存单元 形参属于局部变量 可定义在复合语句中有效的变量 局部变量可用存储类型:auto register static (默认为auto),运行结果: main:a=3,b=4 sub:a=6,b=7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八 函数
链接地址:https://www.31doc.com/p-2981067.html