- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
14C语言(函数、变量作用范围)单元练习
函数、变量作用范围单元练习
单选
1. C语言程序的基本单位是______。
A. 程序 B. 语句 C. 字符 D. 函数
2. 在下列函数调用中,不正确的是______。
A. fun(3,9); B. fun(a,b);
C. fun(5,a+b); D. float fun(a,b);
3. 以下不正确的描述为______。
A. 在函数之外定义的变量为外部变量,外部变量是全局变量。
B. 在函数中既可以使用本函数中的局部变量,又可以使用其他函数的局部变量。
C. 在可以不使用全局变量的情况下应避免使用全局变量。
D. 若在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量不起作用。
4. 执行下列语句后,程序的运行结果为______。
#include stdio.h
int a=10;
f( ) {int a; a=12; }
main() {f();printf(%d,a); return;}
A. 10 B. 12 C. 0 D. 不确定
5. 以下说法中正确的是______。
A. 一个函数在它的函数体内调用它自身称为嵌套调用。
B. 一个函数在它的函数体内调用它自身称为递归调用,这种函数称为递归函数。
C. 一个函数在它的函数体内调用其它函数称为递归调用,这种函数称为递归函数。
D. 一个函数在它的函数体内不能调用自身。
6. 若有函数调用语句fun(a+b, (x,y), fun(n+k,d,(a,b))); ,则在此函数调用语句中实际参数的个数是______。
A. 3 B. 4 C. 5 D. 6
7. 以下叙述中正确的是______。
A. 局部变量说明为static存储类,其生存期将得到延长。
B. 全局变量说明为static存储类,其作用域将被扩大。
C. 任何存储类的变量在未赋初值时,其值都是不确定的。
D. 形参可以使用的存储类说明符与局部变量完全相同。
8. 若调用一个函数,且此函数中无return语句,则正确的说法是______。
A. 没有返回值。
B. 返回若干个系统默认值。
C. 能返回一个用户所希望的函数值。
D. 返回一个不确定的值。
9. 以下程序运行后的输出结果是______。
#include stdio.h
int a=3;
main()
{ int sum=0;
{int a=5; sum+=a++; }
sum+=a++; printf(%d\n,sum); return; }
A. 8 B. 10 C. 7 D. 11
10. 有以下程序:
#include stdio.h
float fun(int x,int y) { return(x+y); }
main()
{ int a=2,b=5,c=8;
printf(%3.0f\n,fun((int)fun(a+b,b),a-c)); return; }
程序运行结果为______。
A. 9.0 B. 21 C. 6 D. 编译出错
11. 若要限制一个变量只能被本程序文件使用,可以采用的实现方式是______。
A. 静态外部变量 B. 静态内部变量
C. 外部变量说明 D. 局部变量说明
12. C语言中的函数______。
A. 可以嵌套定义。
B. 不可以嵌套调用。
C. 可以嵌套调用,但不能递归调用。
D. 嵌套调用和递归调用均可。
13. 有以下程序:
#include stdio.h
int f(int b[][4])
{ int i,j,s=0;
for(j=0;j4;j++)
{ i=j;
if(i2) i=3-j;
s+=b[i][j]; }
return s; }
main( )
{ int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};
printf(%d\n,f(a)); return; }
执行后的输出结果是______。
A. 12 B. 11 C. 18 D. 16
14. 对下列递归函数: int f(int n) { return (n==0)? 1: f(n-1)+2; } 函数调用f(3)的返回值是______。
A. 5 B. 6 C. 7 D. 以上均不是
15. 函数调用语句f((x,y),(a,b,c),(1,2,3,4));中,所含的实参个数是______。
A. 1 B. 2
文档评论(0)