- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言大学使用教材(第2版)第8章讲稿
第8章 函数 说明: ① 用数组名作函数参数时,必须在调用函数和被调用函数中分别定义数组,且数据类型必须一致,否则结果将出错。例如,在本案例中,形参数组为a[],实参数组为score[],它们的数据类型相同。 ② C编译系统对形参数组大小不作检查,所以形参数组可以不指定大小。例如,本案例中的形参数组a[]。 ③ 如果指定形参数组的大小,则实参数组的大小必须大于等于形参数组,否则因形参数组的部分元素没有确定值而导致计算结果错误。 ④ 用数组名作函数实参时,不是将数组的值(整体地)传送给形参数组,还是将实参数组的首地址(数组名表示)传递给形参数组名,因此,形参数组与实参数组共用同一内存空间,如图8-3所提示。 形参数组中各元素的值的变化会使实参数组元素的值同时变化。 例7:利用选择法对数组中10个数按从小到大排序。 a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] b[0] b[1] b[2] b[3] b[4] b[5] b[6] b[7] b[8] b[9] 图8-3 形参数组和实参数组共用同一存储空间 解:所谓选择法就是每次选取确定每个位置的数。确定第i个位置的数的方法是:用第i个位置的数与其后面所有位置(i+1, i+2,…,10)的数比较后确定;i=1, 2, …, 10。 void select_sort(int array[ ], int n) /*选择法排序*/ { int i, j, k, temp; for ( i=1; in-1; i++) { k=i ; /* 确定在第i个位置的数的位置k */ for (j=i+1; jn; j++) if (array[j]array[k]) k=j ; if (k!=i) { temp=array[i]; array[i]=array[k]; array[k]=temp ; } } void main() { int n, a[10]; printf(\n Enter the array:\n); for (n=0; n10; n++) scanf(%d, a[n]); select_sort(a, 10) ; printf(The sorted array is:\n); for (n=0; n10; n++) printf(%d , a[n]); printf(\n); getchar(); } C语言中所有的变量都有自己的作用域。变量说明的位置不同,其作用域也不同,据此将C语言中的变量分为内部变量和外部变量。 8.6 局部变量和全局变量 在一个函数内部说明的变量是内部变量,它只在该函数范围内有效。即只有在包含变量说明的函数内部,才能使用被说明的变量,在该函数之外就不能使用这些变量了。所以内部变量也称“局部变量”。 例如: int f1(int a) /*函数f1*/ { int b,c; …… } /*a,b,c作用域:仅限于函数f1()中*/ 8.6.1 局部变量 int f2(int x) /*函数f2*/ { int y,z; …… } /*x,y,z作用域:仅限于函数f2()中*/? main() { int m,n; …… } /*m,n作用域:仅限于函数main()中*/ 说明: ① 主函数main()中定义的内部变量,也只能在主函数中使用,其它函数不能使用。同时,主函数中也不能使用其它函数中定义的内部变量。 ② 形参变量也是内部变量,属于被调用函数;实参变量,则是调用函数的内部变量。 ③ 允许在不同的函数中使用相同的变量名,它们代表不同的对象,分配不同的单元,互不干扰,也不会发生混淆。 ④ 在复合语句中也可定义变量,其作用域只在复合语句范围内。 在C语言中,所谓变量是数据和存储数据的存储空间的抽象描述。 数据的存储方式有两种,分别是: 静态存储方式:在编译时分配,并且在整个程序运行期间一直占有固定的存储空间。所分配的存储空间是在静态数据区。 动态存储方式:在程序运行期间需要时(函数调用)才分配,使用完(函数调用结束)就释放。所分配的存储空间是在动态数据区。 8.7 变量的存储类别 变量的基本属性有:变量名、数据类型、存储类别、作用域、生存周期、地址(指针)。现讨论与存储类型有关部门的几个属性:存储类别、作用域、生存周期。 在C语言中,变量的完整定义形式是: [存储类
您可能关注的文档
最近下载
- 比选文件编制要求【模板】.pdf VIP
- 2023年深圳市福永中学小升初分班考试数学模拟试卷及答案解析.pdf VIP
- 16S401电伴热设计图集.pdf VIP
- 25道中国船舶集团电气工程师岗位常见面试问题含HR常问问题考察点及参考回答.pdf VIP
- 2024(统编版)中外历史纲要上+下册思维导图合集 .pdf VIP
- 个人商铺房屋租赁合同电子版.docx VIP
- NYT2530-2013 外来入侵植物监测技术规程 刺萼龙葵.pdf VIP
- OpenStack云计算平台实战—项目1 OpenStack安装.pptx VIP
- 外科洗手手术区消毒和铺巾.pptx VIP
- 公卫执业医师历年真题及答案(整理).doc VIP
文档评论(0)