资源预览内容
第1页 / 共92页
第2页 / 共92页
第3页 / 共92页
第4页 / 共92页
第5页 / 共92页
第6页 / 共92页
第7页 / 共92页
第8页 / 共92页
第9页 / 共92页
第10页 / 共92页
亲,该文档总共92页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
函 数 举 例,2,/ * / * 程 序:6_3.cpp(验证素数程序) * / * 作 者:wuwh * / * 编制时间:2002年10月20日 * / * 主要功能:可验证某数是否为素数 * / * #include / 预编译命令 #include / 预编译命令 int checkprime( int );/ 子函数声明 int main()/ 主函数 int a=0;/ 定义整型变量,初始化为0 cout a;/ 键盘输入一个整数 / 用实参a调用子函数,该子函数的 / 返回值作为if语句的分支条件 if ( checkprime(a) ) / checkprime(a)为1 cout a 是素数 endl; else / checkprime(a)为0 cout a 不是素数 endl; / 主函数结束,3,/ * / * 程 序:6_3.cpp(验证素数程序) * / * 作 者:wuwh * / * 编制时间:2002年10月20日 * / * 主要功能:可验证某数是否为素数 * / *,4,#include / 预编译命令 #include / 预编译命令 bool checkprime( int ); / 子函数声明 int main()/ 主函数 int a=0;/ 定义整型变量,初始化为0 cout a;/ 键盘输入一个整数,5,/ 用实参 a 调用子函数,该子函数的 / 返回值作为 if 语句的分支条件 if ( checkprime( a ) ) / checkprime( a ) 为 1 cout a 是素数 endl; else / checkprime( a ) 为 0 cout a 不是素数 endl; / 主函数结束,6,T checkprime( a ) F cout a cout a 是素数 endl; 不是素数 endl,7,bool checkprime(int b)/ 子函数,b为形式参数 int k=0; / 定义整型变量,并初始化 for (k=2; k=sqrt(double)b); k+)/ 循环 if (b%k = 0)/ 如果b能够被k整除,则返回0 / 可理解为“抢先”返回0,有了 return 0, / 后面的 return 1 不起作用了 return 0; return 1;/ b不能被k整除,则返回1 ,8,bool checkprime(int b) int k=0; for (k=2; k=sqrt(double)b); k+) if (b%k = 0) return 0; return 1;,9,bool checkprime( int b ) / 子函数 int k=0; 形式参数 for ( k=2; k=sqrt( (double) b ); k=K+1 ) if ( b % k = 0 ) return 0; return 1; / b不能被k整除,则返回1 / 说明 b 是质数,10,讲这一程序的目的: 如何定义一个函数 主函数怎样调用子函数 实在参数和形式参数 返回值是什么意思,11,主函数与子函数的配合: 主函数通过实参去调用子函数将实参赋给子函数中的形参; 子函数运算之后,又将调用结果返回给主函数一个值,这个值作为主函数判断该实参是素数与否的根据。 两者配合得天衣无缝。,12,在checkprime( int b ) 函数中,有return 0 和 return 1 两处不同。如果先有return 0了,后面一条return 1 就不起作用了。不会既执行 return 0 又执行 return 1。,13,函数的说明 放在主函数之前,告诉系统有 自定义的子函数可以被调用。 例: bool checkprime( int );,14,函数的定义 函数返回值的类型 函数名(类型名 形式参数1,类型名 形式参数2,. . . ) / 函数体 说明部分 语句部分 ,15,形式参数和实在参数 bool checkprime( int af ); /定义 af 是形式参数, 特点: 1.未被调用不占内存单元; 2.被调用后系统为其分配内存单元; 3.调用结束释放内存单元; 4.作用域限定在子函数内,属于局部变量。,16,被调用函数嵌套在 if 语句中,a 是实在参数 if ( checkPrime( a ) )主函数 调用 checkPrime( af ) 子函数 形式参数,17,实在参数是一个具有确定值的表达式 一个函数在调用子函数时,要将实在参数赋给形式参数 调用时 17 17 实在参数 a 形式参数 af,18,调用 输入a 子函数 if (checkPrime(a) checkPrime(af) 执行 if 语句 for: i=2,3 =1 =0 af%i=0 !=0 输出 输出 return 0 return 1 a是质数 a不是质数 返回,19,int main() int a=0;cout a; if ( checkprime(a) ) bool checkprime(int b) int k=0; for (k=2; k=sqrt(double)b); k+) if (b%k = 0) return 0; return 1; cout a 是素数 endl; else cout a 不是素数 endl; ,20,美声唱法歌手大奖赛 裁判人数 n=10, 打分范围 60= x = 100, 10人中打分的最大值 max 10人中打分的最小值 min 10人打分总和为 sum 选手最后得分为: ( sum Max Min )/ ( N 2 ),21,/ * / * 程 序:6_2.cpp * / * 作 者:wuwh * / * 编制时间:2002年10月20日 * / * 主要功能:给歌手打分 * / *,22,# include #include int Max( int , int ) int Min( int , int ) int main( ) int p = 0; int q = 100; int sum = 0,x = 0; int i = 1;,23,for ( i = 1; i x ; p = Max( x, p ); q = Min( x, q ); sum = sum + x ; cout“选手得分 ”(sum-p-q)/(10-2); ,24,int Max( int a , int b ) if ( a b ) return a ; else return b ; int Min( int c , int d ) if ( c d ) return c ; else return d ; ,25,问题:编程求解,现假定 n=6,k=4 思路: 1、该式可分解为 2、定义一个函数,i=1,2,n l = k,26,让 l = 4 , i = 1,2, . . . , 6 这个函数可以表示,3、再定义一个函数 让 m=n, i=1,2,m,即可得解,27,/ * / * 程 序:6_2.cpp * / * 作 者:wuwh * / * 编制时间:2002年10月12日 * / * 主要功能:求幂函数的和(介绍函数) * / *,28,#include / 预编译命令 const int n = 6; / 定义常量 n 为 6 const int k = 4; / 定义常量 k 为 4 int SOP(int m, int l); / 声明函数SOP int power(int p, int q);/ 声明函数power,29,/ 输出结果, 其中SOP(n,k)为被调用函数 int main()/ 主函数 cout Sum of k / 提示信息 from th powers of integers 1 to n is SOP(n,k) endl; ,30,/以下函数是被主程序调用的函数 / 功能:计算1,2,.,m的l次幂的和 int SOP(int m, int l) /,m,l 为形参 int i, sum; sum=0; / 初始化累加器 for(i=1; i=m; i+ )sum=sum+power( i, l );/ 累加 return sum; / 返回值 ,31,/ 以下函数是被函数sop(n,k)调用的函数 / 功能:计算p的q次幂 int power(int p, int q) int i, product; product=1; / 初始化累乘器 for(i=1; i=q; i+)product=product*p; / 累乘 return product; ,32,int SOP(int m, int l) m 6 l 4 power( 1, l ) 1 int power(int p,int q) power( 2, l ) 1 16 int power(int p,int q) 16 power(m, l ) 1296 int power(int p,int q) 2275 1296,33,数据类型 函数名( 形式参数表 ),例:int power(int p, int n) power 为函数名,要以英文字母开头。 int 是函数值的数据类型,这里是int(整型)。 (int p, int n) 括号中的 p, n为函数的形式参数,形式参数也要定义其数据类型。,34,函数定义的一般格式:, () ,35,形式参数与实在参数,1、形式参数是在定义函数时放在函数名后括号中的参数。在未进行函数调用时,并不对形式参数分配内存单元。在发生函数
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号