第7章++程序的模块结构和C函数.ppt_第1页
第7章++程序的模块结构和C函数.ppt_第2页
第7章++程序的模块结构和C函数.ppt_第3页
第7章++程序的模块结构和C函数.ppt_第4页
第7章++程序的模块结构和C函数.ppt_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第7章 程序的模块结构和C函数,7,内容提要,本章从模块化程序设计的角度,介绍如何编制所需要的C函数 包括函数的定义、调用方法,调用函数和被调用函数之间如何进行数据传递,变量和函数的存储类型对函数调用的影响,函数的递归调用 最后介绍如何向main()函数传递数据。,C程序的模块结构,1. 模块化程序设计的特点 根据模块化程序设计的思想,对于复杂的问题都可以采用自顶向下(或自底向上)、逐步求精的方法将其分解成若干个相对独立的子问题。每个子问题对应一个功能独立的程序模块,将这些模块有机地连接在一起,构成一个完整的程序。 2. C程序的模块结构,C函数的定义和调用,1. C函数的定义 C函数的定义格

2、式有两种:传统格式和现代格式。传统格式也称K y=3*x-4; return y; A. int B. 不确定 C. void D. float 2. 在下列关于C函数定义的叙述中,正确的是_。 A. 函数可以嵌套定义,但不可以嵌套调用 B. 函数不可以嵌套定义,但可以嵌套调用 C. 函数不可以嵌套定义,也不可以嵌套调用 D. 函数可以嵌套定义,也可以嵌套调用,本章习题,3. 若函数为int型,变量z为float型,则该函数体内的语句return(z);返回的值是_。 A. int型 B. float型 C. 不定 D. 不确定 4. 在C语言中,函数的隐含存储类型是_。 A. auto B.

3、 static C. extern D. 无存储类型 5. 有以下函数: char *fun(char *p) return p; 该函数的返回值是_。 A. 无确切的值 B. 形参p中存放的地址 C. 一个临时存储单元的地址 D. 形参p自身的地址,本章习题,6. 以下所列各函数定义的首部中,正确的是_。 A. void play(int ,int) B. void play(int a,b) C. void play(int a,int b) D. sub play(a as integer,b as integer) 7. 在C语言中,形参的缺省存储类型是_。 A. auto B. re

4、gister C. static D. extern 8. 有如下函数调用语句: func(rec1,rec2+rec3,(rec4,rec5); 该函数调用语句中,含有的实参个数是_。 A. 3 B. 4 C. 5 D. 有语法错误,本章习题,9. 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是_。 A. 地址传递 B. 单向值传递 C. 由实参传给形参,再由形参传给实参 D. 传递方式由用户指定 10. 以下有关C语言函数的描述中,正确的是_。 A. 在C语言中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参 B. C函数既可以嵌套定义又可以递归调用 C.

5、 函数必须有返回值,否则不能使用函数 D. C程序中有调用关系的所有函数,必须放在同一个源程序文件中 11. 若调用函数的实参是一个数组名,则向被调用函数传送的是_。 A. 数组的长度 B. 数组的首地址 C. 数组每个元素的地 D. 数组每个元素中的值,本章习题,二、填空题 1. 下面的程序用来求数组a各元素的平均值,请填空。 float avr(int *pa,int n) int i; float avg=0.0; for (i=0;in;i+) avg=avg+_(1)_; avg=_(2)_; return avg; main() int i,a5=2,4,6,8,10; float

6、 mean; mean=avr(a,5); printf(mean=%fn,mean); ,本章习题,2. 函数pi的功能是根据以下近似公式求值: (*)/6=1+1/(2*2)+1/(3*3)+1/(n*n) 请将下面函数的空白处填写正确,以完成求的功能。 #include double pi(long n) double s=0.0; long k; for (k=1;k=n;k+) s=s+_; return(sqrt(6*s); 3. 以下函数用来求两整数之和,并通过形参将结果传回。请填空。 void func(int x, iny y, _z) *z=x+y; ,本章习题,三、编程题 1. 编写程序,要求在主函数中输入一个整数,子函数prime()判断该整数是否为素数,若是素数,函数返回1,否则返回0。 2. 编写程序,要求在主函数中输入一个字符串,子函数将该字符串中的大写字母转换成小写字母,小写字母转换成大写字母,其他字符不变,并将转换后的字符串返回主程序。 3. 请编制程序,子函数的功能是求一个float型二维数组最大

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论