第七章 函数知识.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章; 本章要点 函数的定义 函数的调用 函数间的数据传递 变量的存储类型 变量的作用范围 内部函数和外部函数;C程序是函数的集合体,每个函数是一个独立的程序模块。 有一个主函数,若干个子函数,程序总是从主函数开始执行; 函数可集中或分散存放在一个或多个源程序文件中。 所有子函数地位平等,可互相调用、自我调用。 · 引入函数的优点: 减少重复编写程序的工作量;使程序便于调试和阅读。;;[7-1] 输入三个整数,计算它们的和并输出运算结果。 main( ) { int a, b, c, sum ; scanf(%d,%d,%d,a,b,c); sum=add(a,b,c); printf( sum= %d\n,sum); };7.1.2 函数的定义;定义函数的一般形式 类型标识符 函数名(形式参数表) { [说明部分] 语句 };1. 无参函数的定义形式 类型标识符 函数名( ) { [说明部分] 语句 } ; [例7-2] int max (int x,int y) { int z; z=xy?x : y; return z; } ;7.1.3 函数的调用;(1) 函数语句: (把函数调用作为一个语句) 一般形式:函数名(实际参数表); 使用情况:这种方式常用于调用一个可以忽略返回值 或没有返回值的函数,只要求函数完成一定的操作。 例如: print_message( ); ;7.1.4 函数的返回值;说明: return语句只能把一个返回值传递给调用函数。 返回值的类型为定义的函数类型,若return语句中表达式类型与函数类型不一致,以函数类型为准。 返回值可以是有确定值的常量、变量或表达式,也可以是地址。当返值是地址时,应该用指针接受。 无返回值的函数,定义为void类型(无类型函数)。 一个函数中可以有多个返回语句。 ;[例7-3] 用函数facto计算 m 阶乘。 main( ) { int m; long mm; long facto(int ); scanf(%d, m); mm=facto( m ); printf(%d!=%ld.\n, m, mm); } long facto (int x ) { long y; for( y=1; x0; --x ) y *= x; return (y); }; main( ) { int a,b,c; scanf (“%d,%d”,a,b); c=max(a,b); printf(“Max is %d”,c); };/*1*/ /*2*/ /*3*/ /*4*/ /*5*/ /*11*/ /*12*/ /*13*/ /*14*/ /*15*/ /*16*/;int max(x,y) int x,y; {int z; if (xy) z=x; else z=y; return(z); };[例7-5]用函数计算浮点数x的n次方,其中n为int型(n=0); 值传递: 在函数调用时,实参将其值传递给形参。 实参对形参的数据传递是“值传递”,即单向传递,只由实参传递给形参,而不能由形参传回来给实参。 实参与形参占用不同的单元。;[例7-6] 编写函数交换两个变量的值。 #include “stdio.h” swap ( int x, int y) { int temp; temp=x; x=y; y=temp; printf ( x=%d, y=%d\n, x, y); } main (

文档评论(0)

开心就好 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档