C语言程序设计_第4章 函数与编译预处理.ppt

C语言程序设计_第4章 函数与编译预处理.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北京科技大学 计算机系 C语言程序设计 第4章 函数与编译预处理 第4章 函数与编译预处理 4.1 函数概述 【例】 #include <stdio.h> void print_line() /*函数定义*/ { printf("*********************************\n");} void print_text() /*函数定义*/ { printf(" Welcome to Beijing \n");} void main() {print_line(); /*函数调用*/ print_text(); /*函数调用*/ print_line(); /*函数调用*/ } ⑷ 函数的种类 由C编译系统定义的一种函数,存放在系统函数库中,用户可以根据需要随时调用 常用函数 如:fabs、sqrt、sin、pow、rand (常用数学函数参见教材P100 表4-1和附录B ) 函数调用形式: 函数名([参数表]) 例如: sqrt(x) 例 #include <math.h> #include <stdio.h> void main( ) { float x=4.5; printf ("%f, %f, %f\n" ,sqrt(x),pow(x,2),fabs(-x)); } 4.2.1 函数的定义 #include<stdio.h> int cube(int y); /*函数原型声明*/ void main() { int x,last,nowcb; last=1; printf("1~5之间,相邻两数的立方差是:\n"); for(x=2;x<=5;x++) { nowcb=cube(x); /* 函数调用 */ printf("%d ",nowcb-last); last=nowcb; } printf("\n"); } 4.2.3 函数参数传递与返回值 有关形参和实参的说明: 函数的返回值是通过return语句带回到主调函数的 功能:终止函数的运行,返回主调函数,若有返回值,将返回值带回主调函数。 【例】计算并输出圆的面积。 #include <stdio.h> s(int r) { return 3.14*r*r;} void main( ) { int r; scanf("%d",&r); printf("%d\n",s(r)); } 【例4-8】编写函数实现两组变量的显示 #include <stdio.h> int ArrayOperating(int i,char ch) {int a1=1,a2=0,a3=3,a4=5; int b1=2,b2=0,b3=4,b4=3; switch(i) { case 1: switch(ch) {case 'a': return a1; case 'b': return b1; } case 2: …… case 3: …… case 4:…… } } 4.2.4 函数的嵌套调用 【例】函数的嵌套调用 对被调函数进行声明的一般形式 函数类型 函数名(参数类型1 参数名1,…); 或 函数类型 函数名(参数类型1,参数类型2,…); 【例4-12】计算并输出两个数的和、差、积、商。 4.3 局部变量和全局变量 void sub(int a,int b) { int c; a=a+b; b=b+a; c=b-a; printf("sub:\ta=%d b= %d c= %d\n",a,b,c); } 4.3.2 全局作用域和全局变量 int a = 5; void f(int x, int y) { int b,c; b=a+x; c=a-y; printf("%d\t%d\t%d\n",a,b,c); } 4.4 变量的生存期和存储类别 4.4.2 变量的存储类别 变量定义语句的一般形式 ⑴ 内存分配 调用函数或执行分程序时在动态存储区为其分配存储单元,函数或分程序执行结束,所占内存空间即刻释放。 ⑵ 变量的初值 定义变量时若没赋初值,变量的初值不确定;如果赋初值则每次函数被调用时执行一次赋值操作。 ⑶ 生存期 在函数或分程序执行期间。 ⑷ 作用域 自动变量

文档评论(0)

153****9595 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档