第五讲C语言函数.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五讲C语言函数

第5讲 函数 C程序由一个main和任意个函数组成。 #includestdio.h void printstar(void) { puts(**********************\n); } void print_message(void) { puts( Welcome to C!\n); } main() { printstar(); print_message(); printstar(); return 0; } 程序运行后输出: ********************** Welcome to C! ********************** 3)函数不可嵌套定义,具有全局性、平行性, 4)函数分为有参与无参函数 5)程序从main开始执行,最后又回到main函数结束。 5.1.5 定义函数的一般形式 ([void]) { 声明部分 语句 } 调用方式 函数名( ) ; 若有返回值可出现在表达式中,无返值可单独出现 2. 定义有参数的一般形式 函数的定义通常包含以下内容: 函数返回值类型 函数名(形参表说明)/函数首部 { 声明语句 //函数体   执行语句 } 说明: (1)数的类型,是指函数返回值的类型。当不指明函数类型时,系统默认的是型。 (2)函数名本身也有值,它代表了该函数的入口地址,使用指针调用该函数时,将用到此功能。 (3)形参为形式参数。形参表是用逗号分隔的一组变量说明,包括形参的类型和形参标识符,其作用是指出每一个形参的类型和形参的名称,当调用函数时,接受来自主调函数的数据,确定各参数的值。   int func (int x, int y )   { …… }。 (4)用{ }括起来的部分是函数的主体,称为函数体。我们可以得到一个C语言中最简单的函数:dumy ( ){ } 5.2 函数参数和函数的值 C语言中采用参数、返回值和全局变量三种方式进行数据传递。当调用函数时,通过函数的参数,主调函数为形参提供数据调用结束时,被调函数通过返回语句将函数的运行结果(称为返回值)带回主调函数中函数之间还可以通过使用全局变量,在一个函数内使用其他函数中的某些变量的结果。 1 形式参数和实际参数 形参是函数定义时由用户定义的形式上的变量实参是函数调用时,主调函数为被调函数提供的原始数据。实参向形参传送数据的方式是值传递。形式参数是函数的局部变量,仅在函数内部才有意义,不能用它来传递函数的结果。例调用函数的数据传递。 #includestdio.h { int z; z=xy?x:y; return(z); //将函数的结果返回主调函数 } main() { int a,b, c; puts(please enter two integer numbers); scanf(%d %d,a,b); c=max(a,b);//主函数内调用功能函数max,实参为a和b printf(max=%d\n,c); return 0; } 说明:实参与形参必须类型相同,个数相等,一一对应。当调用函数时,实参的值传给形参,在被调函数内部,形参的变化不会影响实参的值。 当实参之间有联系时,实参的求值顺序在不同的编译系统下是不同的,C是从右向左。 例:#includestdio.h int add(int x,int y); main() { int x=2; printf(%d\n,add(x,++x)); return 0; } int add(int x,int y) { return (x+y); } 运行结果: 6 例:若在主函数中变量a=5,b=10,编写一个函数交换主函数中两个变量的值,使变量a=10,b=5。 #includestdio.h void swapf(int x,int y); main() { int a, b; printf(before swapf a=%d b=%d\n,a,b); swapf(a, b); //用变量a和b作为实际参数调用函数 printf(after swapf a=%d b=%d\n,a,b); return 0; } void swapf(int x,int y) { int temp; //借助临时变量交换两个形参变量x和y的值 temp=x; //① x=y; //② y=temp; //③ printf(in swapf x=%d y=%d\n,x,y); }   程序的实际运行结果为:   before swap a=5, b=10   in swap x=10, y=5   after swap a

文档评论(0)

tiangou + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档