c6是几进制c语言,c6 C语言课件.ppt

c6 C语言课件

* * main() f1 f2 f3 f4 f5 f6 f7 f8 函数的定义、调用和说明 函数的参数和函数的返回值 函数的嵌套调用和函数的递归调用 函数与数组 变量的存储类别 体现模块化程序设计的思想 一个源文件通常由一个主函数和若干个子函数组成,各子函数之间是平行的,不能嵌套定义,但能相互调用。 第6章 函数 1、 函数的定义:其一般格式: [类型标识符] 函数名 ( [形式参数表] ) { [函数体] } 其中: 方括号中的内容是可选项。 函数名:由用户命名,命名规则与标识符命名规则相同。 类型标识符: 定义了函数返回值的数据类型。 当函数的返回值是整形或字符型,可省略类型标识符。 当函数无返回值时,则类型类型标识符用void关键字。 形式参数表的形式为: 类型标识符 形参1,类型标识符 形参2,··· 若省略形式参数表,则称为无参函数。否则称为有参函数。 函数体:包含了反映函数功能的说明语句和执行语句。 当函数无函数体时,则为空函数。 一、函数的定义、调用和说明 例6.1:编写一个求n! 的函数(n为整数) long fac(int n) { long k; for( k=1; n>0; n--) k*=n; return(k); } 例 打印30个*号 void printstar ( ) { int j, k; for (j=1; j<=30; j++) printf(“*”) ; printf(“\n”); } 2、函数的调用 函数调用表达式的一般形式:函数名([实参表]) 实参表:可以是常量、变量或表达式。 其类型、顺序和个数必须与函数定义时形参表的一致。 对于无参函数,则省略实参,但括号不能省略。 main() { long fac(int n ); /*函数说明 */ printf(“%ld”,fac(5)); } long fac(int n) { long k; for( k=1; n>0; n--) k*=n; return(k); } 函数的调用过程: 从主调函数转移到被调函数; 将实参的值一对应传递给形参; 从被调函数的第一条语句开始执行该函数各个语句; 在执行完所有语句或遇到return语句时,返回主调函数中原来的断点处继续执行。 main() { int m,n; long amn; long fac(int n); printf("input m,n:"); scanf("%d,%d",&m,&n); amn=fac(m); amn=amn/fac(m-n); printf("%ld\n",amn); } 例6-2 编程求排列问题 long fac(int n) { long k; for(k=1; n>0; n--) k*=n; return(k); } Amn=m!/(m-n)! 3、函数的说明 C语言中,在函数调用之前应对所调用的函数进行说明。指出函数的名称、函数返回值的类型、形参的类型和个数,以便编译系统对函数进行语法检查。 格式;类型标识符 被调函数的函数名([ 形式参数表]); 说明:1、函数说明一般放在主调函数说明部分。 2、若被调函数位于主调函数之前,或其返回值是整型或字符型时,则可省略函数说明。 int max (int x,int y) /*函数定义*/ { return (x>y ? x: y);} 例6.3:#include “stdio.h” main ( ) { int a, b, c; int max (int x, int y); /* 函数说明*/ scanf (“%d %d”,&a,&b); c=max (a,b); /* 函数调用*/ printf (“%d\n”,c); } int

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值