当前位置:
文档之家› C语言程序设计课件:第8章函数
C语言程序设计课件:第8章函数
吉林大学珠海学院计算机系
函数调用
❖ 函数被定义后,只有在调用函数里安排函数调用, 才能将控制从调用者转移到被调函数,也才能进 行数据的传递
❖ 调用者在函数调用时,可向被调用者传递一个或 多个参数。由调用者传递给被调函数的参数,称 为实际参数,简称实参。被调函数接收传递过来 的实参后,依据这些数据执行函数体里的语句。 执行结束后,就把控制返回到调用者发出函数调 用的地方,继续其执行
吉林大学珠海学院计算机系
函数调用 #include <stdio.h>
#include <math.h> int prime (int n) {
吉林大学珠海学院计算机系
函数调用
❖例5.1:调用cube( int x )函数
#include <stdio.h> long cube ( int x ) {
long a; a = x*x*x; return (a); } void main() { int a; long m; scanf ("%d", &a); m = cube(a); printf (“The cude of %d is %ld \n", a, m); printf (“The cude of %d is %ld \n", a, cube(a)); } 吉林大学珠海学院计算机系
吉林大学珠海学院计算机系
函数定义
❖函数名称:cube 执行后返回值类型是long型 ❖ 形式参数:int型,名称为x ❖ 变量声明:在函数体里,说明一个long型变量a, ❖执行语句:a = x*x*x; ❖ 返回语句:return(a);将a的值返回调用者 ❖ 函数类型long与return语句的返回值应一致 ❖ 该函数不能独立运行,必须由调用者通过调用语
int a; scanf ("%d", &a); odd_even(a); } 吉林大学珠海学院计算机系
函数调用
❖ 例5.3:定义名为power的函数,计算x的n次方
#include <stdio.h> double power (double x, int n) {
double s; for (s=1.0; n > 0; n--) { s = s*x; } return (s); } main() { double a, pow; int i; scanf ("%lf%d", &a, &i); pow = power(a, i); printf ("value = %lf\n", pow); } 吉林大学珠海学院计算机系
吉林大学珠海学院计算机系
函数调用
❖ 有返回值的函数,是以函数表达式的方式调用 函数名 (实际参数表)
❖ 无返回值的函数,是以函数调用语句得方式调用 函数名 (实际参数表);
❖ 无论是有返回值还是没有返回值,函数调用时在 实际参数表中列出的实参,必须与被调函数在定 义时在形式参数表中所列形参的个数相等、类型 相符、次序相同,各实参之间仍以逗号为分隔符
吉林大学珠海学院计算机系
函数调用
❖ 函数返回值是通过return语句带回到主调函数 return (表达式); 或 return 表达式; 函数返回值类型由函数类型决定 被调函数无return语句,返回值不确定 函数定义为void类型,不带回返回值 函数可有多条return语句,但是一次运行,只 能执行其中一条return语句。 通过return语句只能返回一个值;如要返回多 个值,只有借助于指针或数组
吉林大学珠海学院计算机系
函数定义
❖ 函数定义的一般格式 函数类型 函数名( 形式参数 形式参数列表 ) { 函数体 } 函数类型:函数执行后返回结果的数据类型。 若函数不返回任何结果值,那么函数类型指定 为void。若函数类型省略,将默认是int
吉林大学的函数 long cube (int x) { long a; a = x*x*x; return (a); }
吉林大学珠海学院计算机系
函数的基本概念
❖ 从用户的角度看,函数有两种: 1.标准库函数,由系统提供的。 2.用户自定义函数,由程序设计者根据专门需 要自己定义的
❖ 从函数的定义形式看,函数分两类: 1.无参函数,在调用函数时,主调函数不向被 调用函数传递参数。 2.有参函数,在调用函数时,主调函数和被调 用函数之间有参数
函数调用
❖ 例5.4:编写判断素数的函数,求出100以内素数 ❖ 所谓素数是指只能被1和自己整除的自然数 ❖ 除2以外,素数都是奇数 ❖定义函数prime( int n ),接收调用者传递的参数 ❖ 剔除n=1的情况,单独处理n=2的情况 ❖ 其余用循环来判断:剔除偶数,寻找从3到sqrt(n)
之间的奇数是否存在能整除n的数。若有,则表明 n不是素数,返回值0;否则n为素数,返回值1
句,把要计算的对象传递给它
吉林大学珠海学院计算机系
函数定义
❖ 定义函数功能:若接收整型参数是偶数,则打印 It is even!,否则打印 It is odd! void odd_even (int x) { if (x %2 == 0) printf ("It is even! \n"); else printf ("It is odd! \n"); }
函数调用
❖例5.2:调用odd_even (int x)函数
#include <stdio.h> void odd_even (int x) {
if (x%2 == 0) printf ("It is even! \n");
else printf ("It is odd! \n"); } void main() {
C语言程序设计
吉林大学珠海学院计算机系
第5章 函数
本章内容
1 函数的基本结构 2 函数的调用 3 函数的参数传递 4 变量的作用域及存储类型
吉林大学珠海学院计算机系
函数的基本概念
❖ 所谓函数,是可以反复使用的一个程序段,其他 函数可通过调用语句来执行这段程序,完成所需 要的工作
❖ 程序由基本语句和函数组成,每个函数完成相对 独立的功能,按一定规则调用这些函数,就组成 了解决某个特定问题的程序