标准C程序设计复习题(答案).DOC

标准C程序设计复习题(答案).DOC

ID:11814555

大小:45.50 KB

页数:10页

时间:2018-07-14

标准C程序设计复习题(答案).DOC_第1页
标准C程序设计复习题(答案).DOC_第2页
标准C程序设计复习题(答案).DOC_第3页
标准C程序设计复习题(答案).DOC_第4页
标准C程序设计复习题(答案).DOC_第5页
资源描述:

《标准C程序设计复习题(答案).DOC》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、9.22复习题9.1请判断下面语句的对错。(a)C函数在其函数名下只能返回一个值。错(b)C语言的函数至少要有一个参数。错(c)自定义函数可以放置在main函数之前定义。对(d)自定义函数可以在main函数内部定义。对(e)自定义函数至少要被调用一次,否则将给出警告信息。不一定:我用gcc-ansi实验过,没有警告信息。(f)任何名称都可用作函数名。错:至少不能用保留字(g)只有void类型的函数才可有void类型的参数。错(h)当变量的值传递给函数时,将在内存中创建一个备份。对(i)不管main函数位于什么位置,程序的运行总

2、是从它开始。对(j)全局变量在程序的所有代码块和函数中都是可见的。对(k)函数可以调用自己。对(1)不含return语句的函数是非法的。错(m)全局变量不能声明为auto变量。对(n)函数原型必须放置在调用函数之外。错(o)默认的函数的返回值类型为int。对(p)函数原型中使用的变量名必须与函数定义中的相匹配。错(q)使用指针进行参数传递时,必须在参数中给参数加前缀符*。对(r)使用指针进行参数传递时,函数调用中的实参可以是变量或常量。错:必须是变量的地址(s)将数组传递给函数时,函数调用必须使用不带括号的数组名。对(t)将字

3、符串传递给函数时,实参必须是该字符串名,后加括号,括号中为数组的大小。错9.2请在空白处填入适当的词。(a)函数调用中使用的参数称为。实参(b)在函数中声明的变量称为。自动变量(c)默认地,C函数返回值的类型为。int(d)用指针进行参数传递时,参数的变量必须在声明时加前缀符号。*(e)在原型声明中,指定为可选的。参数名(f)是指变量实际可用的范围。变量的作用域(g)调用自身的函数称为函数。迭代(h)如果局域变量需要在函数调用之间保持其值,则必须将该变量声明为。静态变量(i)有助于编译器检查实际变量与形式变量之间的匹配'情况。

4、函数声明(j)默认地,声明在函数内部的变量为存储类。自动变量9.3main函数是一个自定义函数。它与其他自定义函数的区别是什么?main函数是C语言一个特别的函数。每个程序都必须有一个main函数,表明程序运行的起始点。9.4请描述两种给函数传递参数的方法。这两种方法分别在什么时候你更希望喜欢使用。第一种:用一般数据类型传递:当我们仅仅想希望从函数外部获得参数值时使用;第二种:用指针进行传递:当我们希望从函数中获得更多的返回值时使用,或者说希望通过函数来修改某些变量的值时使用。9.5何谓原型?为什么说它是必要的?C程序中的所有

5、函数在使用之前都必须声明,函数声明又被称为函数原形。如果没有函数原形,C假设函数的返回类型为整形,参数的类型与形式定义相匹配。如果这些假设有误,那么链接程序将失败。9.6请区分以下两者之间的不同。(a)实参与形参。形参列表声明变量,以接收从调用函数发送来的数据,它们属于函数的内部变量;实参列表是函数调用时被传递给函数的参数,它们并不属于函数。(b)全局变量与局部变量。全局变量的使用范围是从该变量的声明位置开始到程序的末尾为止;局部变量的作用范围是从该变量的声明位置开始,直到生命他的代码块或函数末尾为止。(c)自动变量与静态变量

6、。自动变量是当调用该函数时创建变量,函数退出时自动销毁;静态变量值在程序编译时初始化一次,以后再也不进行初始化了。(d)变量的使用范围与可见性。使用范围确定了程序的哪些区域可以使用该变量;可见性指的是内存变量的可访问性。(e)&运算符与*运算符。&是地址运算符,用来取变量的地址;*是间接运算符,用来取指针所指空间中的内容。9.7请解释一下,当在程序中遇到以下情况时,可能发生什么。(a)函数中的实参比形参少。则那些没有实参与之相配的形参将被初始化为垃圾数据。(b)某个实参的数据类型与相应的形参不匹配。产生垃圾数据。(c)原型中某

7、个参数的数据类型与头文件中相应的形参不匹配。编译器产生错误。(d)函数调用中实参的顺序与函数的形参的不同(所有参数的类型相同)。虽然运行时不会产生错误,但函数运行的结果是错误的,是与预期结果不同的。(e)在return语句中使用的表达式类型与函数的类型不匹配。将会自动把在return语句中使用的表达式类型强制转换为函数的类型,并在编译时应该出现警告的提示信息。9.8下面哪些原型声明是非法的?为什么?(a)int(fun)void;语法错误。(b)doublefun(void)语法错误:缺少分号。(c)floatfun(x,y,

8、n);缺少形参的类型声明。(d)voidfun(void,void)语法错误:缺少分号。(e)intfun(inta,b);形参b缺少形参的类型声明。(f)fun(int,float,char);可能正确:如果fun返回的是int类型的数据,但编译时也会出现警告信息。(g)v

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。