计算机二级考试习题练习

2014计算机二级《C语言程序设计》全真测试(2)
1题:没有定义:charp[]={'1','2','3'),*q=p;,以下不能计算出一个char型数据所占字节数的表达式是( )。
A.sizeof(p)
B.sizeof(char)
C.sizeof(*q)
D.sizeof(p[o])
【单选题】:      

2题:结构化程序没计主要强调的是( )。
A.程序的规模
B.程序的效率
C.程序设计语言的先进性
D.程序的易读性
【单选题】:      

3题: 标准库函数FgEts(s,n,FilE)的功能是( )。
A. 从文件FilE中读取长度为n的字符串存入字符数组s中
B. 从文件FilE中读取长度不超过n-1个字符的字符串放到字符数组s中
C. 从文件FilE中读到n个字符串存入字符数组s中
D. 从文件FilE中读取长度为n-1个字符的字符串存人字符数组s中
【单选题】:      

4题:有以下程序
  #include
  main()
  {inty=9;
  for(;y>0;ym一)
  if(y%3==0)printf(”%d”,——y);
  )
  程序的运行结果是( )。
A.741
B.963
C.852
D.87542l
【单选题】:      

5题:有以下程序:
  main()
  {inta[]={2,4,6,8,10},y=0,x,*p;
  p=&a[1];
  for(x-:1;x<3;x++)y+=p[x];
  printf(“%d\n,y”);
  }
  程序运行后的输出结果是( )。
A.10
B.1.1
C.14
D.15
【单选题】:      

6题:下列程序的运行结果是( )。
  main()
  (intx=1,y=3,a=0;
  while(x++!=(y-=1))
  {a+=1;
  if(y
  }
  printf(”%d,%d,%d\n”,x,y,a);
  }
A.2,3,2
B.2,3,1
C.1,3,3
D.3,1,2
【单选题】:      

7题:对线性表进行二分法检索,其前提条件是( )。
A.线性表以顺序方式存储,并按关键码值排好序
B.线性表以顺序方式存储,并按关键码的检索频率排好序
C.线性表以链式方式存储,并按关键码值排好序
D.线性表以链式方式存储,并按关键码的检索频率排好序
【单选题】:      

8题:有以下程序:
  #include


  voidfun(char*t.char*s)


  {while(*tl=0)t++;


  while((*t++-*s++)!一0);


  )


  main()


  {charssElo]=”aCC”,aaElo]=”bbxxyy”;


  fun(SS,aa);printf(”%s,%s”,SS,aa);


  )
程序运行结果是()。
A.accxyy,bbxxyy
B.acc,bbxxyy
C.accxxyy,bbxxyy
D.accbbxxyy,bbxxyy
【单选题】:      

9题:有以下程序
  #include
  main()
  {FILE*fp;inta[10]=(1,2,3,0,0),i;
  fp—fopen(”d2.dat,”wb”);
  fwrite(a,sizeof(int),5,fp);
  fwrite(a,sizeof(int),5,fp);
  fclose(fp);
  fp—fopen(”d2.dat”,”rb”);
  fread(a,sizeof(int),10,fp);
  fclose(fp);
  for(i=0;i<10;i十f-)printf("%d",a[i]);
  }
  程序的运行结果是( )。
A.1,2,3,0,0,0.0,0,0,0
B.1,2,3,1,2,3,0,0,0,0
C.123,0,0,0,0,123,0,0,O,O
D.1,2,3,0,0,1,2,3,0,0
【单选题】:      

10题:有以下程序,其中函数f的功能是将多个字符串按字典顺序排序( )。
  #{nc[ude%string.h>
  void{(char*p[],intn)
  {char*t;inti,j;
  for(i=0:i
  for(j=i+1;j
  if(strcmp(p[i],p[j]>O){t=p[i];p[i]=p[j];p[j]
  =t;}
  }
  main()
  {char*P[5]={¨abc”,”aabdfg”,”abbd”,”dcdbe”,”ed”);
  f(p,5):
  print[("%d\n",strlen(p[1]));
程序运行后的输出结果是( )。
A.2
B.3
C.6
D.4
【单选题】:      

11题:下面程序的功能是输m以下形式的金字塔图案:
  main()
  {inti,j;
  for(i-1;i<-4;i++)***
  {for(j=1;j<=4-i;j++)printf("");
  *****
  for(j=1;j<=________;j++)printf(”*”);
  ******
  printf(”\n”):
  }
  }
在下划线处应填入的是( )。
A.i
B.2*i-1
C.2*i+1
D.i+2
【单选题】:      

12题:设a、b和C都是int型变量。且a=3,b=4,c=5,则以下的表达式中值为0的表达式是( )。
A.a&&.b
B.a<=b
C.a
D.b+c&&b-cF.!((a
【单选题】:      

13题:下列变量声明合法的是( )。
A.shorta=1.4e1;
B.doubleb=1+3e2.8;
C.10ngdo=0xfdaL;
D.float2_aaa=1e-3;
【单选题】:      

14题:有下列程序:
  main()
  {inty=10
  do(y--;}while(--y);
  printf(”%d\n”,--y);
  )
当执行程序时,输出的结果是( )。
A.-1
B.1
C.4
D.0
【单选题】:      

15题:若程序前面已在命令中包含math.h文件,不能够正确计算上述公式的程序段是( )。
A. if(x>=0)y=-sqrt(x);
  else y=sqrt(-x);
B. y=sqrt(x)
  if(x<0)y=sqrt(~x);
C. if(x>=0)y—sqrt(x);
  If(x<0)y=sqrt(一x);
D. y=sqrt(x>=0?x:-x);
【单选题】:      

16题:当输入为"hello?"时,下面程序的执行结果是( )。
  #includedstdio.h>
  main()
  (charC;
  c=getchar();
  while(c!='?')
  (putchar(c);break;
  )
  }
A.Rvfsu
B.h
C.?
D.hello
【单选题】:      

17题:下列选项中不是C语句的是( )。
A.{inti;i++;printf(”%d\n”,i);)
B.;
C.a=5,c=10
D.{;}
【单选题】:      

18题:若有下列定义和语句:
  intu一011,v一0x11,w一11:
  printf(”%o,%x,%d\n”,u,v,w):
  则输出结果是( )。
A.9,17,11
B.9,11,11
C.11,11,11
D.11,17。11
【单选题】:      

19题:有以下程序:
  #includedstdio.h>
  main()
  {charcl='1',c2='2';
  cl=getchar():c2=getchar();putchar(c1);putchar
  (c2);
  }
当程序运行时输入a<回车>后,下列叙述中正确的是( )。
A.变量c1被赋予字符a,c2被赋予回车符
B.程序将等待用户输入第2个字符
C.变量c1被赋予字符a,c2中仍是原有字符2
D.变量c1被赋予字符a,c2中将无确定值
【单选题】:      

20题:有如下程序:
  main()
  (intx=1,a=O,b=0;
  switch(x)
  {
  CgtSC0:b++;
  case1:a++;
  CaSe2:a++;b++;
  )
  printf(”a=%d.b=%d\n”,a.b);
  }
  该程序的输出结果是( )。
A.a=2,b=1
B.a=1,b=1
C.a=1,b=0
D.a=2b=2
【单选题】:      

21题:有以下程序:
  #include
  main()
  {intk=-3:
  if(k<=0)printf(”****\n”)
  elseprintf(”&&&&\n”);
  }
  程序的输出结果是( )。
A.输出####
B.输出&&&&
C.输出####&&&&
D.有语法错不能通过编译
【单选题】:      

22题:若有定义“intb[8],*p=b;”,则p+6表示( )。
A.数组元素b[6]的值
B.数组元素b[6]的地址
C.数组元素bE73的地址
D.数组元素hEo]的值加上6
【单选题】:      

23题:有下列程序:
  main()
  {chars[]=”abode”;
  s+=2:
  printf(”%d\n”,s[o]);
  )
  执行后的结果是()。
A.输出字符a的ASCII码
B.输出字符c的ASCII码
C.输出字符c
D.程序出错
【单选题】:      

24题:有以下程序:
  #include
  main()
  {intw=4,x=3,y=2,z=1;
  printf(”%d\n”,(w
  程序的输出结果是( )。
A.1
B.2
C.3
D.4
【单选题】:      

25题:下列程序的运行结果是( )。
  #include
  voidfun(int*s,int*p)
  {staticintt=3;
  *p=set];
  t——:
  }
  voidmain()
  {inta[]={2,3,4,5),k;
  intx:
  for(k=0,k<4,k++)
  {fun(a,&.x);
  printf(”%d,”,x);
  )
  }
A.5,4,3,2
B.2,3,4,5
C.2,2,2,2
D.5,5,5,5
【单选题】:      

26题:若有以下程序( )。
  #include
  main()
  {int**k,*j,i=100;
  j=&i;k=&j;printf(”%d\n”,**k);
  }
  程序的输出结果是()。
A.运行出错
B.100
C.j的地址
D.i的地址
【单选题】:      

27题:c语言中,下列不合法的字符常量是( )。
A.'\xff'
B.'\65'
C.'&'
D.'\028'
【单选题】:      

28题:有以下程序段:   int x:
  For(x=3:x<6:x++
  print[((x%2)?(”**%D”):(”##%D\n”),x);
  程序段的输出结果是( )。
A. **3
B. ##3
&nBsp;&nBsp;&nBsp;##4 **4
&nBsp;&nBsp; **5 ##5
C. ##3
D. **3##4
&nBsp;&nBsp;&nBsp; **4##5 **5
【单选题】:      

29题:有以下程序:
  #include
  main()
  {intx,i;
  for(i=1:i<=100:i++)
  {x=i:
  if(++x$2==0)
  if(++x%3==0)
  if(++x%7==0)
  printf(“%d”,x);
  printf(”\n”);
  程序的输出结果是( )。
A.2870
B.4284
C.2668
D.3981
【单选题】:      

30题:下面程序的运行结果是( )。
  #include
  voiddel(char*s)
  {inti,j;
  char*a:
  a=s:
  for(i=0,j一0;a[i]!='\o';i++)
  {if(a[i]>='0'&&a[i]<='9')
  {s[j]=a[i];
  j++;
  }
  s[j]='\0';
  }
  )
  main()
  {char*s==”aa89gggh”:
  del(s);
  printf(”\n%s”,s);
A.1
B.2
C.3
D.4
【单选题】:      

31题:请补充mAin()函数,该函数的功能是:把一个字符串中的所有小写字母字符全部转换成大写字母字符,其他字符不变,结果保存在原来的字符串中。   例如,当str[m]=”ABCDEFl23ABCD”,结果输出:“ABC
  DEF123ABCD”。
  注意:部分源程序给出如下。
  请勿改动mAin()函数和其他函数中的任何内容,仅在横线上填入所编写的若干表达式或语句。
  试题程序:
  #inCluDE
  #inCluDE
  #inCluDE
  #DEFinE m 80
  voiD mAin()
  {
  intj;
  ChAr str[m]=" ABCDEFl23ABCD”;
  ChAr *pF=str;
  systEm(”Cls”):
  printF(”***originAl string *** \n”):
  puts(str);
  【1】
  whilE(*(pF+j))
  {
  iF(*(pF+j)>='A' &Amp;&Amp;*(pF+j)<='z')
  {
  *(pF+j)=【2】 ;
  【3】 ;
  )
  ElsE
  j++;
  )
  printF(”****nEw string****\n”);
  puts(str);
  systEm(”pAusE”);}
【填空题】:

32题:下列给定程序中,函数proC()的功能是:根据整型形參n的值,计算如下公式的值。   t=i-1/(2*2)-1/(3*3)-…-1/(n*n)
  例如.当n=7时。t=0.188203。
  请修改函数proC()中的错误,使它能得出正确的结果。
  注意:不要改动mAin()函数,不得增行或删行,也不得更改程序的结构。
  试题程序:
  #inCluDE
  #inCluDE
  #inCluDE
  DouBlE proC(int n)
  {DouBlE y=1.0;
  inl i;
  //****FounD****
  For(i=2;i
  //****FounD****
  y-=1/(i*i):
  tElurn(y);
  }
  voiD mAin()
  { int n=7:
  systEm(”Cls”):
  print[(”\nthE rEsult is%lF\n”,proE(n))。
【填空题】:

33题:在C语言中可调用log(n)函数求in(n)。log函数的引用说明是DouBlE log(DouBlE x)。   例如,若m的值为10,则proC()函数值为198.934454。
  注意;部分源程序给出如下。
  请勿改动mAin()函数和其他函数中的任何内容,仅在函数proC()的花括号中填人所编写的若干语句。
  试题程序:
  #inCluDE
  #inCluDE
  #inCluDE
  #inCluDE
  DouBlE proC(int m)
  {
  voiD mAin()
  {
  systEm(”Cls”);
  printF(”%F\n”,proC(10));
  }
【填空题】:

 

您正在结束答题

请确认是否提交试卷?

继续做题 确认提交