2014年全国计算机等级《二级C语言程序设计》考前押密试题(4)

考试总分:43分

考试类型:模拟试题

作答时间:60分钟

已答人数:967

试卷答案:有

试卷介绍: 2014年全国计算机等级《二级C语言程序设计》考前押密试题(4)

开始答题

试卷预览

  • 1. 给定程序中,函数proc()的功能是:使数组中的元素的值缩小5倍。请修改程序中的错误,使它能得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。试题程序:#include#include#includefloatm[10];ff****found****intproc(void){intJ;printf(”Insubfuncaftercalling\n”);for(j=0;j<10;j++){|f****found****printf(”%f”,m[j]%5);}}voidmain(){inti;printf(”Inmainbeforecalling\n”);for(i=0;i<10;i++){m[i]=i+20:printf(”%f”,m[i]);}proc();printf(”\nInmainaftercalling\n”):for(i=0;i<10;i++)printf(”%f”,m[i]/S):[24分]
  • 2. 请补充函数proc(),其功能是:计算并输出给定10个数的方差。例如,拾定的10个数为12.0,9.0.26.0,5.0,6.0,31.0,9.0,3.0,8.0,18、0,输出为s=8.8771500。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若于表达式或语句。试题程序:#include#includedoubleproc(doublexElO]){inti;doubleavg=0.0;double8urn=0.0;doubleabs=0.0:doublesd;for(i=0:i<10;i++)【1】;avg=sum/10;for(i=0;i<10;i十十)【2】;sd=【3】;returnsd;voidmain(){doubles,str[10]={12.0,9.0,26.0,5.0,6.0,31.0.9.0,3.0,8.0,18.0);inti;printf(”\nTheoriginaldatais:\n”);for(i一0;i<10;i++)t)rintf(”%6.lf,slr[i]):printf(”\n\n”);s=proc(str):printf(”s=%f\n\n”,s);)[18分]
  • 3. 请编写函数proc(),该函数的功能是:将放在字符串数组中的M个字符串(每串的长度不超过N),按顺序合并组成一个新的字符串。例如,若字符串数组中的M个字符串为:ABCDBCDEFGCDEFGHI则合并后的字符串内容应该是ABCDBCDEFGCDEFGHI。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。试题程序:#include#include#defineM3#defineN20voidproc(chararr[M][N].char*b){}voidmain(){charstr[M][N]={”ABCD”,”BCDEFG”,”CDEFGHl”),i;chararr[100]={”##################”);printf(”Thestring:\n”);for(i=0;i<2M;i++)puts(str[i]);printf(”\n”);proc(str,arr);printf(”TheAstring:\n”);printf(”%S”,arr);printf(”\nln”);}[18分]
  • 4. 若有以下程序:#includemain(){intk=2,m=4,n=6,。pk=&k,*pm=&m,*P;*(P=&n)=*pk*(*pm);printf("%d\n",n);)程序的输出结果是()。[1分]

    A4

    B6

    C8

    D10

  • 5. 下列字符数组初始化语句中,不正确的是()。[1分]

    Acharc[]='goodmorning';

    Bchare[20]="goodmorning":

    Ccharc[]=('a','b','c','d');

    Dcharc[]={”ffgoodmorning”);

  • 6. 下列合法的声明语句是()。[1分]

    Aint_abc=50;

    Bdoubleint=3+5c2.5:

    Clongdo=11;

    Dfloat3_asd=3e-3;

  • 7. 设a=1,b=2,c=3,d=4,则表达式:“a<B?A:B<B?A:C[1分]

    A4

    B3

    C2

    D1

  • 8. 有以下程序:#includemain(){intx:=10,y=3;printf(”%d\n”,y=x/y);)执行后的输出结果是()。[1分]

    A0

    B1

    C3

    D不确定的值

  • 9. 数字字符0的ASCII值为48,运行以下程序的输出结果是()。main(){chara='1',b='2':printf(”%c,”.b++);printf(”%d\n”,b-a);)[1分]

    A3,2

    B50,2

    C2,2

    D2,50

  • 10. 若有定义和语句:int*。pp,*P,a=20,b=10;pp=8Lp;P=&a;P=&.b;printf(”%d,%d\n”,*P,**PP);则输出结果是()。[1分]

    A20,10

    B20,20

    C10,20

    D10,10

  • 11. 当执行以下程序段时,()。x=-1:do{x=x*x;)while(!x);[1分]

    A循环体将执行一次

    B循环体将执行两次

    C循环体将执行无限次

    D系统将提示有语法错洪

  • 12. 有以下程序:#include(strint9.h>main(){charp[20]={'a','b','c','d'},q[]=”abe”,r[]=”abcde”;strcpy(p+strlen(q),r);strcat(p,q);printf(”%d%d\n”,sizeof(p),strlen(p));)程序运行后的输出结果是()。[1分]

    A209

    B99

    CZ011

    D1111.

  • 13. 设a、b、e、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值是()。[1分]

    A0

    B1

    C2

    D3

  • 14. 以下选项中不合法的用户标识符是()。[1分]

    AabC.C

    Bfile

    CMain

    DPRINTF

  • 15. 为了提高软件的独立性,模块之间最好是()。[1分]

    A控制耦合

    B公共耦合

    C内容耦合

    D数据耦合

  • 16. 以下程序的输出结果是()。main(){char*s=”l2134211”;intv[4]={0,0,0,0),k,i;for(k=0;s[k];k++){switch(s[k]){case…1:i=0;case'2':i=1:ease'3':i=2;case'4':i=3;})vEij++;)for(k=0;k<4;k++)printf(”%d¨,v[k]);[1分]

    A4211

    B0008

    C4678

    D8888

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

    A软件测试应该由程序开发者来完成

    B程序经调试后一般不需要测试

    C软件维护只包括对程序代码的维护

    D以上三种说法都不对

  • 18. 下列程序中函数sort()的功能是对数组a中的数据进行由大到小的排序。#includevoidsort(inta[],intn){inti,j,t;for(i0;i<N—L:I++)for(j=i+1+1;j<N;J++)if(aEi]<AEJ]){t=a[i];a[i]=a[j];a[j]=t;)main(){inta[10]={1,2,3,4,5,6,7,8,9,10},i:sort(&a[1],7);for(i=0;i<10;i++)printf(”Vood,”,a[i]);}程序运行后的输出结果是()。[1分]

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

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

    Ci,8,7,6,5,4,3,2,9,10,

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

  • 19. 若有定义:intX,*pb;则正确的赋值表达式是()。[1分]

    Apb=&X

    Bpb=X

    C*pb=&x

    D*pb=*x

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

    A算法的执行效率与数据存储结构无关

    B算法的空间复杂度是指算法程序中指令(或语句)的条数

    C算法的有穷性是指算法必须能在执行有限个步骤之后终止

    D以上3种描述都不对

  • 21. C语言可执行程序的开始执行点是()。[1分]

    A包含文件中的第一个函数

    B程序中第一个函数

    C程序中的main()函数

    D程序中第一条语句

  • 22. 设有定义的语句:“charc1=92,c2=92;”,则以下表达式中的值为零的是()。[1分]

    Ac1^c2

    Bc1&c2

    C~c2

    Dc1&c2

  • 23. 有以下程序:main(){intx=0,y=5,z=3;while(z-->O&&++x<5)y=y-1:printf(”%d,%d,%d\n”,x,y.z);}程序执行后的输出结果是()。[1分]

    A3,2,0

    B3,2,-1

    C4,3,-1

    D5,2,5

  • 24. 下述程序执行的输出结果是()。#includemain(){chara[2][4];strcpy(a,"are");strcpy(a[1],"you");a[0][3]='&'print[(”%s\n”,a);}[1分]

    Aarec&you

    Byou

    Care

    D&.

  • 25. 下列程序的输出结果是()。main()(inti=1,j=2,k=3;if(i++==1&&(++j==3==||k++==3))printf(”%d%d%d\n”,i,j,k);)[1分]

    A123

    B234

    C223

    D233

  • 26. 以下程序的输出结果是()。main(){charstr[][10]={¨china”,”beijing”),*p=str;printf(”%s\n”,p十10):[1分]

    AChina

    BBeijing

    Cng

    Ding

  • 27. 以下关于字符串的叙述中正确的是()。[1分]

    Ac语言中有字符串类型的常量和变量

    B两个字符串中的字符个数相同时才能进行字符串大小的比较

    C可以用关系运算符对字符串的大小进行比较

    D空串一定比空格打头的字符串小

  • 28. 下列程序的输出结果是()。#includemain(){inta=0,i;for(i=1;i<5:i++){switch(i){case0:case3:a+=1;case】:case2:a=2;default:a+=3;}}printf(”%d”,a);)[1分]

    A19

    B18

    C6

    D8

  • 29. 设x=011050,则x=x&01252的值是()。[1分]

    A0000001000101000

    B1111110100011001

    C0000001011100010

    D1100000OOOl01000

  • 30. 下列选项不符合良好程序设计风格的是()。[1分]

    A源程序要文档化

    B数据说明的次序要规范化

    C避免滥用got0语句

    D模块设计原则是高耦合、高内聚

  • 31. 若有说明“charslE30]=”abc”,s2[]=”defghi“;”,则在使用函数stcat(sl,s2)后,结果是()。[1分]

    Asl的内容更新为abcdefghi

    Bsl的内容更新为defghi\O

    Csl的内容更新为defghiabc\O

    Dsl的内容更新为abcdefghi\O

  • 32. 有以下程序:#includemain(){intx=4,y;{y=x;if(!y)printf(”x”);elseprintf(”y”);x--:)while(x);)程序的输出结果是()。[1分]

    Axyyx

    BYYYY

    Cyyxx

    Dyxyx

  • 33. 有以下程序段:inti,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m++;printf(”%d\n”,m);程序段的输出结果是()。[1分]

    A12

    B15

    C20

    D25

  • 34. 执行下列程序后,变量a,b,e的值分别是()。intx一5,Y=4;inta,b,e;a=(——x==y++)?x;++y;b=++x;c=y;[1分]

    Aa=5,b=5,c=5

    Ba=4,b=5,c=5

    Ca=5,b=6,c=5

    Da=1,b=5,C=6

  • 35. 两个或两个以上模块之间联系的紧密程度称为()。[1分]

    A耦合性

    B内聚性

    C复杂性

    D数据传输特性

  • 36. 交换两个变量的值,不允许用临时变量,应该使用下列()位运算符。[1分]

    A&

    B^

    C||

    D

  • 37. 若有定义“inta=-5,b=7;”,则表达式a%=(b%2)运算后,a的值为()。[1分]

    A0

    B1

    C11

    D3

  • 38. 有以下程序:#includemain(){inta[]={2,4.6.8},*p=a,i;for(i=0;i<4;i+.+)a[i]=*p++;printf(”%d\n”,a[2]);程序的输出结果是()。[1分]

    A6

    B8

    C4

    D2

  • 39. 函数[seek(pf,OI,SEEK_END)中的SEEK_END代表的起始点是()。[1分]

    A文件开始

    B文件末尾

    C文件当前位置

    D以上都不对

  • 40. 若有以下程序段:intcl=1,c2=2,c3;c3=c1/c9;print[(”%d\n”,c3);执行后的输出结果是()。[1分]

    A0

    B1/2

    C0.5

    D1

  • 41. 已知有如下结构体:structsk{inta;floatb;}data,*p;若有P一8Ldata,则对data的成员a引用正确的是()。[1分]

    A(*p).data.a

    B(*p).a;

    Cp->data.a

    DP.data.a

  • 42. 合法的main()函数命令参数形式是()。[1分]

    Amain(inta,char*c口)

    Bmain(intarc,char**arv)

    Cmain(intargc,char*argv)

    Dmain(intargv,char*argc[])

  • 43. 若有定义“doublea;”,则正确的输入语句是()。[1分]

    Ascan{(”%if”,a);

    Bscanf(”%f”,&a);

    Cscan{(”%If”,&a)

    Dscan{(”%le”,&a);

相关试卷
相关题库