函数及变量的作用域课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《函数及变量的作用域课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 函数 变量 作用 课件
- 资源描述:
-
1、第四讲函数及变量的作用域函数及变量的作用域第1页,共64页。第2页,共64页。第3页,共64页。即函数返回值的类型。无返回值为void类型语句序列。描述了实现功能的过程,并一般要最后执行一条return语句。可包含多个形式参数。定义了函数将从调用函数中接收多少个数据及其类型第4页,共64页。第5页,共64页。即所有参数的数据类型第6页,共64页。注注 意意第7页,共64页。#include void f1();/函数说明void f2();void main()f1();/函数调用 f2();void f1()/函数定义 cout Function f1.n;f2();void f2()cou
2、t Function f2.n;main()f1()f2()第8页,共64页。第9页,共64页。第10页,共64页。第11页,共64页。函数声明函数声明调用表达式调用表达式函数定义函数定义实参的个数、类型及顺序要与形参保持一致形式参数实际参数第12页,共64页。第13页,共64页。有时也称:第14页,共64页。#include#include void swap(void swap(int,intint,int););void main()void main()int int a=3,b=5;a=3,b=5;coutbefore swap:a=a,b=bendl;coutbefore swap
3、:a=a,b=bendl;swap(swap(a,ba,b););coutafter swap:a=a,b=bendl;coutafter swap:a=a,b=bendl;void swap(void swap(int a,int bint a,int b)int temp;int temp;temp=a;a=b;b=temp;temp=a;a=b;b=temp;coutin swap:a=a,b=bendl;coutin swap:a=a,b=bendl;第15页,共64页。调用swap时,内存单元分配情况:353ababtemp 实参 形参3535实参形参35过程调用中35过程调用后te
4、mp=a;a=b;b=temp;第16页,共64页。第17页,共64页。#include#include void swap(void swap(int int*,int,int*););void main()void main()int int a=3,b=5;a=3,b=5;coutbefore swap:a=a,b=bendl;coutbefore swap:a=a,b=bendl;swap(swap(&a,&ba,&b);/);/实参为变量地址 coutafter swap:a=a,b=bendl;coutafter swap:a=a,b=bendl;void swap(void sw
5、ap(int int*a,int a,int*b b)/)/形参为指针类型 int temp;int temp;temp=temp=*a;a;*a=a=*b;b;*b=temp;/b=temp;/注意引用方式 coutin swap:a=a,b=bendl;coutin swap:a=a,b=bendl;第18页,共64页。调用swap时,内存单元分配情况:35353过程调用后 形参ababtemp 实参3510012008实参形参2008100120081001过程调用中35temp=*a;*a=*b;*b=temp;第19页,共64页。第20页,共64页。#include void swa
6、p(int&,int&);void main()int a=3,b=5;coutbefore swap:a=a,b=bendl;swap(a,b);/实参为变量名 coutafter swap:a=a,b=bendl;void swap(int&a,int&b)/形参为引用类型 int temp;temp=a;a=b;b=temp;/注意区别 coutin swap:a=a,b=bendl;第21页,共64页。调用swap时,内存单元分配情况:35353过程调用后 形参ababtemp 实参35实参形参20081001过程调用中35temp=a;a=b;b=temp;第22页,共64页。第23
7、页,共64页。#include#include int add(int x,int y);int add(int x,int y);/函数声明函数声明 void main()void main()int a=4,b=6;int a=4,b=6;int z=add(int z=add(+a,a+b+a,a+b);/);/从左至右为从左至右为5 115 11 coutzendl;/coutzendl;/从右至左为从右至左为5 105 10 int add(int x,int y)int add(int x,int y)/函数定义(实现)函数定义(实现)return x+y;return x+y;第
8、24页,共64页。第25页,共64页。第26页,共64页。第27页,共64页。#include void invert(char b,int n);void main()char s60;int n;couts;cout字符串原始顺序:sendl;n=strlen(s);invert(s,n);cout字符串反转后的顺序:sendl;void invert(char b,int n)for(int i=0;in/2;i+)char c=bi;bi=bn-1-i;bn-1-i=c;S0S1S2S3S4输入一字符串个数,反序存放并输出输入一字符串个数,反序存放并输出不能写成invert(sn,n)
9、有问题吗?第28页,共64页。第29页,共64页。#include void invert(char*b,int n);void main()char s60;int n;/char*p=s;couts;cout字符串原始顺序:sendl;n=strlen(s);invert(s,n);/invert(p,n);cout字符串反转后的顺序:sendl;void invert(char*b,int n)for(int i=0;in/2;i+)char c=*(b+i);*(b+i)=*(b+n-1-i);*(b+n-1-i)=c;输入一字符串个数,反序存放并输出输入一字符串个数,反序存放并输出第
10、30页,共64页。第31页,共64页。#include typedef char arr60;/先用类型定义一个char型的数组类型void invert(&b,int n);void main()char s60;int n,*p=s;coutp;cout字符串原始顺序:sendl;n=strlen(s);invert(s,n);cout字符串反转后的顺序:sendl;void invert(arr&b,int n)for(int i=0;iy)?x:y);double max(double x,double y)return(xy)?x:y);#include void main()cou
展开阅读全文