计算机等级考试复习题7.docx

上传人:b****5 文档编号:4934426 上传时间:2022-12-11 格式:DOCX 页数:12 大小:17.17KB
下载 相关 举报
计算机等级考试复习题7.docx_第1页
第1页 / 共12页
计算机等级考试复习题7.docx_第2页
第2页 / 共12页
计算机等级考试复习题7.docx_第3页
第3页 / 共12页
计算机等级考试复习题7.docx_第4页
第4页 / 共12页
计算机等级考试复习题7.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

计算机等级考试复习题7.docx

《计算机等级考试复习题7.docx》由会员分享,可在线阅读,更多相关《计算机等级考试复习题7.docx(12页珍藏版)》请在冰豆网上搜索。

计算机等级考试复习题7.docx

计算机等级考试复习题7

计算机等级考试复习题(7)

1.以下关于return语句叙述中正确的是()。

[单选题]*

一个自定义函数中必须有一条return语句

一个自定义函数中可以根据不同情况设置多条return语句(正确答案)

定义void类型的函数中可以有带返回值的return语句

没有return语句的自定义函数在执行结束时不能返回到调用处

2.有以下程序:

#include

doublef(intn){

    inti;

    doubles;

    s=1.0;

    for(i=1;i<=n;i++)

        s+=1.0/i;

    returns;

}

main(){

    inti,m=3;

    doublea=0.0;

    for(i=0;i

    a+=f(i);

    printf("%f\n",a);

}

程序的输出结果是()。

[单选题]*

5.500000(正确答案)

3.000000

4.000000

8.25

3.有以下程序

#include

intfun(intx)

{

    intp;

    if(x==0||x==1)

        return(3);.

    p=x-fun(x-2):

    returnp;

}

main()

{

    printf("%d\n",fun(7));

}

执行后的输出结果是()。

[单选题]*

7

0

3

2(正确答案)

4.有以下程序

#include

voidf(intx){

    if(x>=10)    {    printf("%d-",x%10);    f(x/10);}

    else    printf("%d",x);

}

main(){

    intz=123456;

    f(z);

}

程序运行后的输出结果是()。

[单选题]*

1-2-3-4-5-6

6-5-4-3-2-1(正确答案)

1-2-3-4-5-6-

6-5-4-3-2-1-

5.有以下程序

#include

intfun(intn)

{

    inta;

    if(n==1)return1;

    a=n+fun(n-1);

    return(a);

}

main()

{

    printf("%d\n",fun(5));

}

程序的输出结果是()。

[单选题]*

14

9

15(正确答案)

10

6.有如下程序

#include

voidconvert(charch)

{

    if(ch<'D')convert(ch+1);

    printf("%c",ch);

}

main()

{

    convert('A');printf("\n");

}

程序运行后的输出结果是()。

[单选题]*

A

ABCD

ABCDDCBA

DCBA(正确答案)

7.有以下程序

#include

main()

{

    intfindnax(int,int,int),m;

    ……

    m=findmax(a,b,c);

    ……

}

intfindmax(intx,inty,intz){……}

则以下叙述正确的是()。

[单选题]*

在main函数中定义了findmax函数

在main函数内、外重复定义了findmax函数

在main函数中两次调用了findmax函数

在main函数中声明了findmax函数(正确答案)

8.以下叙述中正确的是()。

[单选题]*

如果函数带有参数,就不能调用自己

函数体中的语句不能出现对自己的调用

函数名代表该函数的入口地址(正确答案)

所有函数均不能接受函数名作为实参传入

9.下列叙述中正确的是()。

[单选题]*

每个C程序文件中都必须要有一个main函数

在C程序中main函数的位置是固定的

C程序中所有函数之间都可以相互调用

在C程序的函数中不能定义另一个函数(正确答案)

10.以下叙述中正确的是()。

[单选题]*

任何情况下都不能用函数名作为实参

函数的递归调用不需要额外开销,所以效率很高

函数既可以直接调用自己,也可以间接调用自己(正确答案)

简单递归不需要明确的结束递归的条件

11.有以下程序

#include.

intm1(intx,inty)

{    returnx<=y?

x:

y;}

intm2(intx,inty)

{    returnx<=y?

y:

x;}

intfun(inta,intb)

{    returna+b;}

main()

{

    intx=2,y=3,z=1;

    printf("%d\n",fun(ml(x,y),m2(y,z)));

}

程序的运行结果是()。

[单选题]*

3

4

5(正确答案)

6

12.有如下程序:

#include

intfun(inta,intb)

{

    intt;

    t=a;a=b;b=t;

}

main()

{

    intc[10]={1,2,3,4,5,6,7,8,9,0},i;

    for(i=0;i<10;i+=2)

        fun(c[i],c[i+1]);

    for(i=0;i<10;i++)

        printf("%d,",c[i]);

    printf("\n");

}

程序的运行结果是()。

[单选题]*

1,2,3,4,5,6,7,8,9,0(正确答案)

0,9,8,7,6,5,4,3,2,1

1234567890

0987654321

13.以下叙述中错误的是()。

[单选题]*

函数的return语句中可以没有表达式

用户定义的函数中若没有return语句,则应当定义函数为void类型

用户定义的函数中可以没有return语句

用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值(正确答案)

14.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确()。

[单选题]*

函数的形参和实参分别占用不同的存储单元(正确答案)

同名的实参和形参占同一个存储单元

形参只是形式上的存在,不占用具体存储单元

函数的实参和其对应的形参共占同一存储单元

15. 以下关于函数的叙述中正确的是()。

[单选题]*

函数必须要有返回值

函数形参的类型与返回值的类型无关(正确答案)

函数调用必须传递实参

函数必须要有形参

16.设有函数定义:

voidsub(intk,charch){……}

则以下对函数sub的调用语句中,正确的是()。

[单选题]*

sub(4,"a");

n=sub(3,'a');

sub(2,'97');

sub(1,97);(正确答案)

17.关于C语言函数说明的位置,以下叙述正确的是()。

[单选题]*

在函数说明之后对该函数进行调用,编译时不会出现错误信息(正确答案)

函数说明只能出现在源程序的开头位置,否则编译时会出现错误信息

函数说明只是为了美观和编译时检查参数类型是否一致,可以写也可以不写

函数说明可以出现在源程序的任意位置,在程序的所有位置对该函数的调用,编译时都不会出现错误信息

18.有以下程序

#include

intnew_div(doublea,doubleb)

{returna/b+0.5;}

main()

{printf("%d",new_div(7.8,3.1));}

程序运行后的输出结果是()。

[单选题]*

0

1

2

3(正确答案)

19.若有以下程序:

#include

int*f(int*s,int*t)

{

    intk;

    if(*s<*t){k=*s;*s=*t;*t=k;}

    returns;

}

main()

{

    inti=3,j=5,*p=&i,*q=&j,*r;

    r=f(p,q);

    printf("%d,%d,%d,%d,%d\n",i,j,*p,*q,*r);

}

则程序的输出结果是()。

[单选题]*

3,5,5,3,5

3,5,3,5,5

5,3,3,5,5

5,3,5,3,5(正确答案)

20.有以下程序

#include

intfuna(inta,intb){returna+b;}

intfunb(inta,intb){returna-b;}

intsss(int(*t)(),intx,inty){return((*t)(x,y));}

main(){

    intx;

    x=sss(funa,9,3);

    x+=sss(funb,8,3);

    printf("%d\n",x);

}

程序运行后的输出结果是()。

[单选题]*

17(正确答案)

24

23

22

21.若有以下程序

#include

intf(intm){

    staticintn=0;

    inta=2;

    n++;

    a++;

    returnn+m+a;

}

main(){

    intk;

    for(k=0;k<4;k++)

        print("%d",f(k));

}

程序运行的输出结果是()。

[单选题]*

3,5,7,9,

4,7,10,13

4,6,8,10(正确答案)

4,5,6,7,

22.有以下程序

#include

intfun(intn)

{

    staticintt=1;

    inti=1;

    for(;i<=n;i++)t*=i;

        returnt;

}

main()

{

    intt=1,i;

    for(i=2;i<4;i++)

        t+=fun(i);

    printf("%d\n",t);

}

程序的运行结果是()。

[单选题]*

11

8

15(正确答案)

4

23.有以下程序

#include

intb=2;

intfun(int*k)

{

    b=*k+b;

    return(b);

}

main()

{

    inta[10]={1,2,3,4,5,6,7,8},i;

    for(i=2;i<4;i++){

        b=fun(&a[i])+b;

        printf("%d",b);

    }

    printf("\n");

}

程序运行后的输出结果是()。

[单选题]*

1016

810

1028(正确答案)

1012

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

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

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