ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:22.81KB ,
资源ID:6988916      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6988916.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(答案第七章函数.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

答案第七章函数.docx

1、答案第七章 函数第七章 函数一、选择题1.以下函数声明正确的是: C 。(0203第一学期试题)A) double fun(int x, int y) B) double fun(int x; int y)C) double fun(int x, int y) ; D) double fun(int x , y)2.C语言规定,简单变量作实参,它与对应形参之间的数据传递方式是: B 。(0级)A)地址传递; B)单向值传递;C)双向值传递; D)由用户指定传递方式3.以下关于语言程序中函数的说法正确的是: B 。(0级)函数的定义可以嵌套,但函数的调用不可以嵌套;)函数的定义不可以嵌套,但函数

2、的调用可以嵌套;)函数的定义和调用均不可以嵌套;)函数的定义和点用都可以嵌套。4.以下正确的函数形式是: D 。(1级)A)double fun(int x,int y) B)fun (int x,y) z=x+y;return z; int z;return z;C)fun(x,y) D)double fun(int x,int y) int x,y ; double z; double z; z=x+y; return z; z=x+y; return z;5.以下说法不正确的是: B 。 (1级)C 语言规定 A)实参可以是常量、变量或表达式 B)形参可以是常量、变量或表达式 C)实参可

3、以是任意类型D)形参应与其对应的实参类型一致6.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是 B 。(0级)A) float型 B) int 型 C)long 型 D)double 型7.以下错误的描述是 D 。(0级)函数调用可以 A)出现在执行语句中 B)出现在一个表达式中 C)做为一个函数的实参 D)做为一个函数的形参8.若用数组名作为函数调用的实参,传递给形参的是 A 。(0级)A)数组的首地址 B)数组第一个元素的值C)数组中全部元素的值 D)数组元素的个数9.以下正确的说法是 A 。(0级)如果在一个函数中的复合语句中定义了一个变量,则该变量A)只在该复合语句中有效 B)

4、在该函数中有效C)在本程序范围内有效 D)为非法变量10.以下不正确的说法为 D 。(0级)A)在不同函数中可以使用相同名字的变量B)形式参数是局部变量C)在函数内定义的变量只在本函数范围内有效D)在函数内的复合语句中定义的变量在本函数范围内有效11.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为 A 。(0级)A)自动(auto) B)静态(static) C)外部(extern) D)寄存器(register)12.下面程序的正确运行结果是: D 。(1级)main( ) int a=2, i;for(i=0;i2) return(fib(n-1)+fib(n-2); else r

5、eturn(2); main( ) printf(“%dn”,fib(3); 该程序的输出结果是 B 。(1级) A2 B4 C6 D 824.有以下程序voidf(int x,int y) int t;if(xy) t=x; x=y; y=t; main() int a=4,b=3,c=5;f(a,b); f(a,c); f(b,c);printf(%d,%d,%dn,a,b,c);执行后输出的结果是 D 。(1级) A) 3,4,5 B) 5,3,4 C) 5,4,3 D) 4,3,525.以下函数的功能是:通过键盘输入数据,为数组中的所有元素赋值。#define N 10void arr

6、in(int xN) int i=0;while(iy)?x:y; return(z); f2(int x, int y)int z; z=(xy)?x:y; return(z); 执行后输出的结果是 C 。(1级)A) 3,4,5 B) 5,3,4 C) 5,4,3 D)3,5,429.以下程序的输出结果是 C 。(1级) #include int f(void) static int i = 0; int s =1;s += i;i+;return (s); void main(void) int i, a = 0;for (i=0; ib) c=1; else if (a=b) c=0;

7、 else c=-1; return(c); A)1,0 B)2,0 C)2,-1 D)1,138. 下面程序的输出结果是: B 。(往届试题)int m=13;int fun( int x, int y) int m=3; return( x*y-m); main( )int a=7,b=5; printf(“%dn”, fun(a,b)/m); A)1 B)2 C)7 D)1039. 若有说明语句:static int a34=0;则下面叙述正确的是: B 。(往届试题)A)只有a00元素可得到初值0;B)数组a中每个元素均可得到初值0。C)数组a中各元素都可得到初值,但值不一定为0;D)

8、此说明语句不正确40. 以下程序的运行结果是: B 。(往届试题)main( ) int a=2, i ; for(i=0;i3;i+) printf(“%4d”,f(a) ) ; f( int a) int b=0,c=3;b+; c+; return(a+b+c); A)7 10 13 B)7 7 7C)7 9 11 D)7 8 9二、填空题1.C语言规定,可执行程序的开始执行点是 main 。(0级)2.在C语言中,一个函数一般由两个部分组成,它们是 函数首部 和 函数体。(0级)3.函数swap(int x,int y)可完成对x和y值的交换。a0=1,a1=2 在运行调用函数中的如下

9、语句后,a0和a1 的值分别为 a0=1,a1=2 ,原因 单向值传递,不能返回交换后的值 。(1级)4.函数swap(arr,n)可完成对arr数组从第1个元素到第n个元素两两交换。在运行调用函数中的如下语句后,a0 和a1的值分别为 a0=2,a1=1 ,原因实参是地址,已对指定地址中的内容进行了交换。(1级)5.设在主函数中有以下定义和函数调用语句,且f un函数为void类型;请写出fun函数的首部 fun (double b) 。要求形参名为b。(1级) main() double s1022; int n; fun(s); 6.返回语句的功能是从包含它的函数 返回 调用函数 。(0

10、级)三、程序填空题1. (1)d=a*b/c (2)num1num2 (3)x%y2. (1)break (2)getchar( ) 3. (1) (int)(value10+5)/10) 4.(1)2i1 (2)a(i) (3)a(i) 5.(1) j (2) strj-1 6.(1)n*fac(n-1) (2)fac(n)7.(1)i10 (2)arrayi (3)average(score)1.下面程序的功能是利用函数调用求两整数的最大公约数和最小公倍数,请填空。 (1级) main( ) int a, b ,c,d; scanf(“%d, %d”, &a, &b ) ; c = gon

11、gyue( a, b ) ; (1) ; printf(“gongyue=%d,gongbei=%dn”, c,d ) ; gongyue( int num1, int num2 ) int temp, x, y ; if (_ (2) _) temp=num1; num1=num2 ; num2=temp ; x=num1 ; y=num2 ; while(_ (3) _) temp=x%y ; x=y ; y = temp ; return (y) ; 2.以下程序的功能是根据输入的“y”(“Y”)与“n”(“N”),在屏幕上分别显示出“This is YES.”与“This is NO.

12、”。请填空。(1级) # include viod YesNo(char ch) switch(ch)case y: case Y: printf(“nThis is YES.n”); (1) ; case n: case N: printf(“nThis is NO.n”); main( )char ch; printf(“nEnter a char y,Yorn,N:”); ch= (2) ; printf (”ch: %c”,ch); YesNo(ch); 3.以下Check函数的功能是对value中的值进行四舍五入计算,若计算后的值与ponse值相等,则显示“WELL DONE!”,否

13、则显示计算后的值。已有函数调用语句Check(ponse,value);请填空。(1级) viod Check ( int ponse, float value) int val; val= (1) ; printf (“计算后的值: %d”, val); if (val= =ponse) printf(“n WELL DONE! n”); else printf (“nSorry the correct answer is %dn”, val);4.以下程序的运行结果是输出如下图形。请填空。(1级)* * * * * * * * * * * * * * * * * * * * * *# in

14、clude void a (int i) int j, k; for (j=0; j=7i; j+) printf (“ “); for (k=0; k (1) ; k+) printf(“”);printf(“n”); main ( ) int i; for( i=0; i=0; i) (3) ; 5.函数fun的功能是:使字符串str按逆序存放。(2级)void fun (char str) char m; int i, j;for (i=0, j=strlen(str); i (1) ; i+, j-) m = stri; stri = (2) ; strj-1 = m;printf(%

15、sn,str);6.以下程序使用递归法求n!, 请填空。(03试题)float fac(int n) float f; if(n0) printf(“n0” data error); f=-1; else if(n=0|n=1) f=1; else f=_ (1) _;return( f ); main( ) int n; float y;printf(“input a integer number”);scanf(“%d”,&n);y=_ (2) _;printf(“%d! = %15.0f”, n, y ); 7. 以下程序可计算10名学生1门功课成绩的平均分,请填空。(往届试题)floa

16、t average( float array10 ) int i; float aver, sum=array0; for ( i=1; _ (1) _;i+) sum+=_ (2) _; aver=sum/10; return(aver); main( ) float score10, aver ; int i ; printf(“ninput 10 scores:”); for(i=0; i10;i+) scanf(“%f”,&scorei ); aver =_ (3) _; printf(“naverage score is %5.2fn”, aver);四、读程序写结果题1. 15 2

17、. i=7;j=6;x=7 i=2;j=7;x=5;3. 1114. A+B=95. 1236. 2467. 1:a=1,b=12:a=1,b=23:a=1,b=38. x=9x=109. 910. input a integer number:55!=12011. 2112. 77713. 1514. 015. sum=61.下面程序的运行结果是: 。 (1级)main( ) int i=5; printf(“%dn”, sub(i) ) ; sub ( int n ) int a ;if ( n=1) a=1; else a=n+sub(n-1); return( a ) ; 2.下面程序

18、的运行结果是: 。 (1级) main( ) int i=2, x=5, j=7; fun (j,6); printf(“i=%d; j=%d; x=%dn”, i, j, x ) ; fun (int i, int j ) int x=7; printf(“i=%d; j=%d; x=%dn”, i, j, x) ;3.以下程序的运行结果是 。(1级)main( ) increment ( ); increment ( ); increment ( ); increment ( ) int x=0; x+=1; printf (“%d”, x); 4.以下程序的运行结果是 。(1级)int

19、a=5; int b=7;main( ) int a=4, b=5,c; c=plus (a,b); printf(“A+B=%dn”,c) ; plus (int x, int y) int z; z=x+y; return (z); 5.以下程序的运行结果是 。(1级)main( ) increment ( ); increment ( ); increment ( ); increment ( ) static int x=0; x+=1; printf (“%d”, x); 6.以下程序的输出结果是 。 (2级)void fun() static int a=0; a+=2; printf(“%d”,a); main() int cc; for(cc=1;cc4;cc+) fun() printf(“n”); 7.以下程序的输出结果是 。 (2级)#include void f(int c) int a=0; static int b=0; a+; b+; printf(%d: a=%d, b=%dn, c, a, b);void main(void) int i; for (i=1; i=3; i+) f(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1