2014年全国计算机等级《二级C语言程序设计》上机考试冲刺试题(5)

考试总分:43分

考试类型:模拟试题

作答时间:60分钟

已答人数:967

试卷答案:有

试卷介绍: 2014年全国计算机等级《二级C语言程序设计》上机考试冲刺试题(5)

开始答题

试卷预览

  • 1. 请补充main()函数。该函数的功能是:求1~200中(不包括200)所有素数的平均值。程序运行后的结果为91.89。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在m。in()函数的横线上填入所编写的若:F表达式或语句。试题程序:#include#includevoidmain(){inti,j,n=0,flag;floataver=0:system(”CLS”):for(j=2;j<2200;j++){flag=1;for(i=2;i<J;I++)if(【1】){flag=0;break;)if(【2】){n++;aver+=j;))printf(”\n\naverage=%4.2f\n”,【3】);)[18分]
  • 2. 假定输入的字符串中只包含字母和*号。请编写函数proc(),它的功能是:将字符串中的前导*号全部删除,中间和后面的*号不删除。例如,若字符串中的内容为****a*bc*def*g****,删除后,字符串中的内容则应当是a*bc*def*g****。注意:部分源程序给出如下。清勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。试题程序:#include#includevoidproc(char*str){voidmain()charstr[81];printf(”Enterastring:n”);gets(str);proc(str);printf(”Thestringafterdeleted:n”);puts(str);)[18分]
  • 3. 下列给定程序中,函数proc()的功能是:根据输入的3个边长(整型值),判断能否构成三角形:若能构成等边三角形,则返回3;若是等腰三角形,则返回2;若能构成三角形则返回1;若不能,则返回0。例如,输入3个边长为3。4,5.实际输入时,数与数之间以Enter键分隔而不足逗号。请修改程序中的错误.使它能得出正确的结果。注意:不要改动main()函数。不得增行或删行.也不得更改程序的结构。试题程序:#include#includeintproc(inta.intb.intc){if(a+b>c&&h+c>a&&a+c>b){if(a==b&&b==c)//****found****return1;elseif(a==b||b==e||a==c)return2:f|****found****elsereturn3:}elsereturn0:}voidmain()(inta,b,C,shape;printf(”\nfnputa,b,e:”);scanf(”%d%d%d”,&.a&.b,&c);printl'(”na=%d,b-%d,e=%d\n”,a,b,c);shape=proc(a,b,c);printl.(”\n\nTheshape:%d\n”,shape);}[24分]
  • 4. 已知二又树后序遍历序列是dabec,中序遍历序列是debac,那么它的前序遍历序列是()。[1分]

    Aacbed

    Bdecab

    Cdeabc

    Dcedba

  • 5. 设intx=7,则~x的值是()。[1分]

    A-8

    B7

    C-1

    D1

  • 6. 有以下程序#includevoidfun(char**D){++P;printf(”%s”,*p);)main(){char*a[]={”Mornin9”,”Afternoon”,”Evening”,”Night”);fun(a):)程序的运行结果是()。[1分]

    AAfternoon

    Bfternoon

    CMorning

    Dorning

  • 7. 有以下程序:#includemain(){charX='A';x=(x>='A'&&x<='Z')?(x十32):x;printf(”%c\n”,x);}程序的输出结果是()。[1分]

    AA

    Ba

    CZ

    Dz

  • 8. 有以下程序#includevoidfun(int*a,intn)/*fun函数的功能是将a所指数组元素从大到小排序*/{intt,i,j;for(i=0;i<N一1;J++)for(j=i+1;j<N;J++)if(a[i]}main(){intc[10]={1,2,3,4,5.6,7,8,9,0),i;fun(c+4.6):for(i=0;i<10;i++)printf(”%d,”,c[i]);printf(”n”):}}程序运行的结果是()。[1分]

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

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

    C0,9.8,7.6,5,4,3,2,1.

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

  • 9. 以下程序段给数组所有元素输入数据:#includemain(){inta[10],i=0;while(i<10)scanf(”%d”,);}应在下划线处填入的是()。[1分]

    Aa+(i++)

    B&a[i+1]

    Ca+i

    D&a[++i]

  • 10. 若有定义语句:inta[3][6];,按在内存中的存放顺序,a数组的第10个元素是()。[1分]

    Aa[o][4]

    Ball][3]

    CaEO][3]

    Da[1][4]

  • 11. 以下叙述中正确的是()。[1分]

    A预处理命令行必须位于c源程序的起始位置

    B在c语言中,预处理命令行都以“#”开头

    C每个c程序必须在开头包含预处理命令行:#include

    DC语言的预处理不能实现宏定义和条件编译的功能

  • 12. 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。[1分]

    A-3

    B9

    C-12

    D6

  • 13. 以下关于typedef的叙述错误的是()。[1分]

    A用typedef可以增加新类型

    Btypedef只是将已存在的类型用一个新的名字来代表

    C用typede{可以为各种类型说明一个新名,但不能用来为变量说明一个新名

    D用typedef为类型说明一个新名,通常可以增加程序的可读性

  • 14. 假设a和b为int型变量,则执行以下语句后b的值为()。a==1;b=10:do{b-=a;a++;)while(b--<O):[1分]

    A9

    B-2

    C-1

    D8

  • 15. 函数fseek()的正确调用形式是()。[1分]

    Afseek(位移量,起始点,文件类型指针);

    Bfseek(文件类型指针,位移量,起始点);

    Cfseek(文件类型指针,起始点,位移量);

    Dfseek(起始点,位移量,文件类型指针);

  • 16. 对下列二又树进行中序遍历的结果是()。[1分]

    AACBDFEG

    BACBDFGE

    CABDCGEF

    DFCADBEG

  • 17. 以下叙述中错误的是()。[1分]

    A对于double类型数组,不可以直接用数组名对数组进行整体输入或输出

    B数组名代表的是数组所占存储区的首地址,其值不可改变

    C当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息

    D可以通过赋初值的方式确定数组元素的个数

  • 18. 下列程序的输出结果是()。#includemain(){inti,s=0;for(i=1:i<10;i++)if(!(i%2)&&!(i%3))s+=i;printf(”%d\n”,s);[1分]

    A4

    B39

    C45

    D6

  • 19. 设“intx=2,y=1;”,则表达式(!x||y--)的值I是()。[1分]

    A0

    B1

    C2

    D-1

  • 20. 在深度为5的满二叉树叶中,叶子结点的个数为()。[1分]

    A32

    B31

    C16

    D15

  • 21. 以下关于long、int和short类型数据占用内存大小的叙述中正确的是()。[1分]

    A均占4个字节

    B根据数据的大小来决定所占内存的字节数

    C由用户自己定义

    D由C语言编译系统决定

  • 22. 要求通过while循环不断读人字符,当读入字母N时结束循环,若变量已正确定义,下列正确的程序段是()。[1分]

    Awhile((ch=getchar())!='N')printf(”%c”,ch);

    Bwhile(ch=getchar()!='N')printf(”%c”,ch);

    Cwhile(ch=getchar()=='N')printf(”%c”,ch);

    Dwhile((chgetchar())=='N')printf(”%c”,ch);

  • 23. 合法的c语言赋值语句是()。[1分]

    Aa=b=58

    Bk=int(a+b);

    Ca=58,b=58

    D--i;

  • 24. 下列叙述中错误的是()。[1分]

    A列表框和组合框都有List属性

    B列表框有Selected属性,而组合框没有

    C列表框和组合框都有Style属性

    D组合框有Text属性,而列表框没有

  • 25. 下述程序的输出结果是()。#includevoidmain(){intb[6]={2,4,6,8,I0,12};int*p=b,**q=&p;printf(”%d,”,*(p++));printf(”%d,”,**q);[1分]

    A4,4

    B2,2

    C4,5

    D2,4

  • 26. 假定x和Y为double型,则表达式x=2,y=x+3/2的值是()。[1分]

    A3.500000

    B3

    C2.000000

    D3.000000

  • 27. 有以下程序:#ineludeintf(intb[],intn){inti,r=1;for(i=0;i<=n;i++)r=r*bEi3;returnr;)main(){intx,a[]={2,3,4,5,6,7,8,9);x=f(a,3);printf(”%a\n”,x);)程序的输出结果是()。[1分]

    A720

    B120

    C24

    D6

  • 28. 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是()。[1分]

    A数据库系统

    B文件系统

    C人工管理

    D数据项管理

  • 29. 下列关于信息系统的叙述中,错误的是()。[1分]

    A广播电视是一种双向的、点到多点的信息交互系统

    B网络聊天是一种双向的,以信息交互为主要目的的系统

    C电话是一种双向的、点对点的、以信息交互为主要目的的系统

    D雷达是一种以感测和识别为主要目的的系统

  • 30. 可在c程序中用作用户标汉符的一组标识符是()。[1分]

    Avoid

    Bas_b3define_123WORDIf

    CFor

    D2c_abcDOcaseSlG

  • 31. 有以下程序:main(){intk=5,n一0;do{switch(k){casel:case3:11+=1;k--;break;defalut:n=0;k--;case2:case4:n+=2;k--;break;printf(”%d”,n);}while(k>0&&n<5);}程序运行后的输出结果是()。[1分]

    A235

    B0235

    C02356

    D2356

  • 32. 若希望下列的程序运行后输出25,程序空白处的正确选项是()。main(){inti,j=50,a[]={7,4,10,5,8);for()j+=a[i];print{(”%d”,j-40);)[1分]

    Ai=1;i<4;++i

    Bi=1;i<3;++i

    Ci=4;i>2;i--

    Di=2;i<4;++i

  • 33. 用链表表示线性表的优点是()。[1分]

    A便于随机存取

    B花费的存储空间较顺序存储少

    C便于插入和删除操作

    D数据元素的物理顺序与逻辑顺序相同

  • 34. 下面描述中,不属于软件危机表现的是()。[1分]

    A软件过程不规范

    B软件开发生产率低

    C软件质量难以控制

    D软件成本不断提高

  • 35. 若要用函数fopen打开一个新的二进制文件,该文件要既能读也能写,则应以()方式打开文件。[1分]

    A”wb”

    B”wb+”

    C”rb+”

    D”rb”

  • 36. 运行下列程序时,若输入的数据为“1,2,3”,则输出结果是()。main(){floata,h,e,t;seanf(”%f,%f,%f”,&a,&b,&c);if(a<B){t=a;a=b;b=t;)if(a<C){t=a;a=c;c=t;)it(b<C){t=b.b=c;c=t;)printf(”%f\n%f\n%f\n”,a,b,c);)[1分]

    A1.00

    B1.002.003.003.002.00

    C1

    D3.0000032.0000021.00000

  • 37. 面向对象的没计方法与传统的面向过程的方法有本质不同,它的基本原理是(,)。[1分]

    A模拟现实世界中不同事物之间的联系

    B强调模拟现实世界中的算法而不强调概念

    C使用现实世界的概念抽象地思考问题从而自然地解决问题

    D不强调模拟现实世界中的算法而强调概念

  • 38. 以下叙述中正确的是()。[1分]

    AC语言程序总是从第一个定义的函数开始执行

    B在C语言程序中,要调用的函数必须在main()函数中定义

    CC语言程序总是从main()函数开始执行

    DC语言程序中的main()函数必须放在程序的开始部分

  • 39. 在C语言程序中可用做用户标识符的是()。[1分]

    Avoid

    Baa123_abcBBNcas

    Cas+b3

    D6f—123DoIfSIG

  • 40. 有以下程序:main()(intk=5;while(--k)printf(”%d”,k-=3);printf(”n”);}执行后的输出结果是()。[1分]

    A1

    B2

    C4

    D死循环

  • 41. 读取二进制文件的函数调用形式为:fread(buffer,size,count,fp);,其中buffer代表的是()。[1分]

    A一个文件指针,指向待读取的文件

    B一个整型变量,代表待读取的数据的字节数

    C一个内存块的首地址,代表读人数据存放的地址

    D一个内存块的字节数

  • 42. 下列程序:intfun(intx[],intn){staticintsum=0,i;for(i=0;ireturnsum:main(){inta[]={1,2.3,4,5),b[]={6,7,8,9),s=0;s==fun(a,5)+fun(h,4),printf(”%d\n”.s);f程序执行后的输出结果是()。[1分]

    A45

    B50

    C60

    D55

  • 43. 下列叙述中正确的是()。[1分]

    A在面向对象的程序设计中,各个对象之间具有密切的关系

    B在面向对象的程序设计中,各个对象都是公用的

    C在面向对象的程序设计中,各个对象之间相对独立,相互依赖性小

    D上述3种说法都不对

相关试卷
相关题库