二级C语言笔试320真题无答案.docx

上传人:b****3 文档编号:26718640 上传时间:2023-06-22 格式:DOCX 页数:18 大小:31.64KB
下载 相关 举报
二级C语言笔试320真题无答案.docx_第1页
第1页 / 共18页
二级C语言笔试320真题无答案.docx_第2页
第2页 / 共18页
二级C语言笔试320真题无答案.docx_第3页
第3页 / 共18页
二级C语言笔试320真题无答案.docx_第4页
第4页 / 共18页
二级C语言笔试320真题无答案.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

二级C语言笔试320真题无答案.docx

《二级C语言笔试320真题无答案.docx》由会员分享,可在线阅读,更多相关《二级C语言笔试320真题无答案.docx(18页珍藏版)》请在冰豆网上搜索。

二级C语言笔试320真题无答案.docx

二级C语言笔试320真题无答案

二级C语言笔试-320

(总分100,考试时间90分钟)

一、选择题

  下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。

1.能正确表示逻辑关系""a≥10或a≤0""的C语言表达式是______。

A.a>=10ora<=0B.a>=0|a<=10

C.a>=10&&a<=0D.a>=10||a<=10

2.有如下程序段:

  #include<stdio.h>

  #defineMax(a,B)a>b?

a:

b

  main()

  

  inta=5,b=6,c=4,d;

  d=c+Max(a,B);

  printf("%d",D);

  

  其输出结果为______。

A.10B.5

C.6D.编译错误

3.若变量已正确定义并赋值,下面符合C语言的表达式是______。

A.a:

=b+1B.a=b=c+2

C.int18.5%3D.a=a+7=c+b

4.有如下函数调用语句

  func(rec1,rec2+rec3,(rec4,rec5));

  该函数调用语句中,含有的实参个数是______。

A.3B.4

C.5D.有语法错误

5.有如下程序段

  int *p,a=10,b=1;

  p=&a;a=*p+b;

  执行该程序段后,a的值为______。

A.12B.11

C.10D.编译出错

6.检查软件产品是否符合需求定义的过程称为______。

A.确认测试B.集成测试

C.验证测试D.验收测试

7.有以下函数定义:

  voidfun(intn,doublex)……

  若以下选项中的变量都已正确定义并赋值,则对函数fun正确调用语句是______。

A.fun(inty,doublem);B.k=fun(10,12.5);

C.fun(x,n);D.voidfun(n,x);

8.下面一组中都是C语言关键字的是______。

A.doubleIntfor

B.mainwhilegoto

C.volatilebreakstatic

D.mallocsizeofnew

9.有如下程序段

  int a=14,b=15,x;

  char c='A';

  x=(a&&B) &&(c<'B');

  执行该程序段后,x的值为______。

A.trueB.false

C.0D.1

10.下面程序的输出结果是______。

  main()

  

  charstr[10],c='a';

  inti=0;

  for(;i<5;i++)

  str[i]=C++;

  printf("%s",str);

  

A.abcdeB.a

C.不确定D.bcdef

11.C语言运算对象必须是整型的运算符是______。

A.%=B./

C.=D.<=

12.有以下程序:

  int*f(int*x,int*y)

  if(*x<*y)returnx;

  elsereturny;

  

  main()

  

  inta=7,b=8,*p,*q,*r;

  p=&a;q=&b;

  r=f(p,q);

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

  

  程序运行后输出结果是______。

A.7,8,8B.7,8,7

C.8,7,7D.8,7,8

13.下述关于C语言文件的操作的结论中,正确的是______。

A.对文件操作必须先关闭文件B.对文件操作必须先打开文件

C.对文件操作顺序无要求D.对文件操作前必须先测文件是否存在,然后再打开文件

14.以下叙述不正确的是______。

A.分号是C语言的必要组成部分B.C程序的注释可以写在句的后面

C.函数是C程序的基本单位D.主函数的名字不一定用main表示

15.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送______。

A.调用语句B.命令

C.口令D.消息

16.若变量a、i已正确定义,且i已正确赋值,合法的语句是______。

A.a=1B.++i;

C.a=a++=5;D.a=int(i);

17.将E-R图转换到关系模式时,实体与联系都可以表示成______。

A.属性B.关系

C.键D.域

18.若已建立如下图所示的单向链表结构:

 在该链表结构中,指针p、s分别指向图中所示结点,则不能将s所指的结点插入到链表末尾仍构成单向链表的语句组是______。

19.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是______。

A.1B.2

C.2.0D.2.5

20.设有声明语句char a='\72';,则变量a______。

A.包含1个字符B.包含2个字符

C.包含3个字符D.声明不合法

21.有如下程序

  main()

  

  chars[][5]="abc","de","fgh";

  printf("%c",s[2][6]);

  

  其输出为______。

A.不确定B.编译错误

C.gD.输出null字符

22.假设在turboc2.0采用small模式编译如下程序

  main()

  

  chara[4]='a','b';

  char*b="abc";

  printf("%d,%d",sizeof(

A.,sizeof(B.);

&n

C.4,3D.2,2

23.执行语句for(i=1;i++<4;);后变量i的值是______。

A.3B.4

C.5D.不定

24.下列关键字中,不属于C语言变量存储类别的是______。

A.registerB.auto

C.externD.public

25.有如下程序

  main()

  inty=3,x=3,z=1;

  printf("%d%d\n",(++x,y++),z+2);

  

  运行该程序的输出结果是______。

A.34B.42

C.43D.33

26.下面不属于软件设计原则的是______。

A.抽象B.模块化

C.自底向上D.信息隐蔽

27.有如下程序

  main()

  

   charch[2][5]="6937","8254",*p[2];

   int i,j,s=0;

   for(i=0;i<2;i++) p[i]=ch[i];

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

       for(j=0;p[i][j]>,'\0';j+=2)

   s=10*s+(p[i][j]-'0');

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

  

  该程序的输出结果是______。

A.69825B.63825

C.6385D.693825

28.在C语言中,函数中变量的隐含存储类别是______。

A.autoB.static

C.externD.无存储类别

29.算法一般都可以用______控制结构组合而成。

A.循环、分支、递归B.顺序、循环、嵌套

C.循环、递归、选择D.顺序、选择、循环

30.有如下程序

  main()

   intx=1,a=0,b=0;

   switch(x)

   case0:

b++;

   case1:

a++;

   case2:

a++;b++;

   

   printf("a%d,b=%d\n",a,B);

  

  该程序的输出结果是______。

A.a=2,b=1B.a=1,b=1

C.a=1,b=0D.a=2,b=2

31.有如下程序:

  main()

  

   inta[3][3]=1,2,3,4,5,6,i,j,s=0;

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

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

   s+=a[i][j];

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

  

  该程序的输出结果是______。

A.18B.19

C.20D.21

32.数据的存储结构是指______。

A.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示

C.数据在计算机中的顺序存储方式D.存储在外存中的数据

33.已经定义ch为字符型变量,以下赋值表达式中错误的是______。

A.ch='\'B.ch=62+3

C.ch=NULLD.ch='\xaa'

34.运行以下程序后,如果从键盘上输入6514<回车>,则输出结果为______。

  main()

  

  intm,n;

  printf("Enterm,n:

");

  scanf("%d%d",&m,&n);

  while(m!

=n)

  

   while(m>n)m-=n;

   while(n>m)n-=m;

  

  printf("m=%d\n",m);

  

A.m=3B.m=2

C.m=1D.m=0

35.有如下程序

  main()

   int i,sum;

   for(i=1;i<=3;sum++)sum+=i;

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

  

  该程序的执行结果是______。

A.6B.3

C.死循环D.0

36.有如下程序

  main()

   floatx=2.0,y;

   if(x<0.0)y=0.0;

   elseif(x<10.0)y=1.0/x;

    elsey=1.0;

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

  

  该程序输出结果是______。

A.0.000000B.0.250000

C.0.500000D.1.000000

37.下列函数定义中,会出现编译错误的是______。

A.max(intx,inty,int*z)

B.intmax(intx,y)

   *z=x>y?

x:

y;          intz;

   z=x>y?

X:

y;

                     returnz;

C.max(intx,inty)

D.intmax(intx,inty)

 intz;               returnx>y?

x:

y;

  z=x>y?

x:

y;

  return(z);

38.有如下程序

  intfunc(inta,intB)

    return(a+B); 

  main()

   intx=2,y=5,z=8,r;

   r=func(func(x,y),z);

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

  

  该程序的输出结果是______。

A.12B.13

C.14D.15

39.有以下程序段:

  main()

  

  inta=5,*b,**c;

  c=&b;b=&a;

  

  程序在执行了c=&b;b=&a;语句后,表达式**c的值是______。

A.变量a的地址B.变量b中的地址

C.变量a中的值D.变量b的地址

40.有如下说明:

  inta[10]=1,2,3,4,5,6,7,8,9,10,*p=a;

  则数值为9的表达式是______。

A.*p+9B.*(p+8)

C.*p+=9D.p+8

41.在关系数据库中,用来表示实体之间联系的是______。

A.树结构B.网结构

C.线性表D.二维表

42.有以下函数

  char *fun(char*p)

   return p; 

  该函数的返回值是______。

A.无确切的值B.形参p中存放的地址值

C.一个临时存储单元的地址D.形参p自身的地址值

43.下列工具中为需求分析常用工具的是______。

A.PADB.PFD

C.N-SD.DFD

44.设有下列二叉树:

  

  对此二叉树中序遍历的结果为______。

45.有如下程序:

  long fib(int n)

  if(n>2) return(fib(n-1)+fib(n-2));

   else return

(2);

  

  main()

  printf("%ld\n",fib(3));

  该程序的输出结果是______。

A.2B.4

C.6D.8

46.有如下程序

  main()

   intx=3;

   do

    printf("%d",x--);

   while(!

x);

  

  该程序的执行结果是______。

A.321B.3

C.不输出任何内容D.陷入死循环

47.若有以下定义:

int t[3][2];,能正确表示t数组元素地址的表达式是______。

A.&t[3][2]B.t[3]

C.t[1]D.*t[2]

48.下面程序运行后的输出结果是______。

  structabc

  

  inta,b,c;

  

  main()

  

  structabcs[2]=1,2,3,4,5,6;

  intt=-s[0].a+s[1].b;

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

  

A.5B.6

C.7D.8

49.有如下程序:

  #define n 2

  #define m N+1

  #define NUM 2*m+1

  main()

   inti;

   for(i=1;i<=NUM;i++)printf("%d\n",i);

  

  该程序中的for循环执行的次数是______。

A.5B.6

C.7D.8

50.索引属于______。

A.模式B.内模式

C.外模式D.概念模式

二、填空题

  请将每一个空的正确答案写在答题卡的【1】至【20】序号的横线上,答在试卷上不得分。

1.在运算过程中,能够使空表与非空表的运算统一的结构是 【1】 。

2.软件工程研究的内容主要包括:

  【2】  技术和软件工程管理。

3.与结构化需求分析方法相对应的是  【3】  方法。

4.关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、  【4】  和自定义完整性。

5.数据模型按不同的应用层次分为三种类型,它们是  【5】  数据模型、逻辑数据模型和物理数据模型。

6.表示""整数x的绝对值大于5""时值为""真""的C语言表达式是  【6】  。

7.以下程序的输出结果是  【7】  。

main()

 unsignedshorta=65536;intb;

 printf("%d\n",b=A);

8.若有定义inta=10,b=9,c=8;,接着顺序执行下列语句,变量b中的值是  【8】  。

  c=(a-=(b-5));

  c=(a%11)+(b=3);

9.以下程序运行后的输出结果是  【9】  。

  main()

  

  intp=30;

  printf("%d\n",(p/3>0?

p/10:

p%3));

  

10.函数pi的功能是根据以下近似公式求π值:

  (π*π)/6=1+1/(2*2)+1/(3*3)+…+1(n*n)

  现在请你在下面的函数中填空,完成求π的功能。

  #include “math.h"

   doubles=0.0; longi;

  for(i=1;i<=n;i++)s=s+  【10】  ;

  return(sqrt(6*s));

  

11.函数pi的功能是根据以下公式近似求得的:

  pi*pi/6=1+1/(2*2)+1/(3*3)+…+1/(n*n)

  请在下面的函数中填空,完成求pi的功能。

  #include<math.h>

  doublepi(longn)

   doubles=0.0,longi;

  for(i=1;i<=n;i++)s=s+  【11】  ;

  return(sqrt(6*s));

  

12.若输入字符串:

abcde↓,则以下while循环体将执行  【12】  次。

  while((ch=getchar())=='e')printf("*");

13.以下函数用来求出两整数之和,并通过形参将结果传回,请填空。

  voidfunc(intx,inty,  【13】  z)

    *z=x+y; 

14.若有以下定义,则不移动指针p,且通过指针p引用值为98的数组元素的表达式是  【14】  。

  intw[10]=23,54,10,33,47,98,72,80,61, *p=w;

15.设在主函数中有以下定义和函数调用语句,且fun函数为void类型;请写出fun函数的首部  【15】  。

要求形参名为b。

  main()

  doubles[10][22];

  int n;

  fun(s);

  

16.有以下程序:

  intf(intn)

  if(n==1)return1;

  elsereturnf(n-1)+1;

  main()

   inti,j=0;

   for(i=1;i<3;i++)j+t(i);

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

  

  程序运行后的输出结果是  【16】 。

17.以下程序的输出结果是  【17】  。

  voidfun()

   static int a=0;

   a+=2; printf("%d",A);

  

  main()

    int  cc;

    for(cc=1;cc<4;cc++)fun();

    printf("\n");

  

18.实现程序可将磁盘中的一个文件复制到另一个文件中,两个文件的文件名在可执行命令的命令行中(相当于copy命令),假定文件在当前目录下。

请补全程序。

  #include<stdio.h>

  voidmain(intargc,char*argv[])

   FILE*f1,*f2;

   if(argc<  【18】  )

    printf("parametererror!

\n");exit(0);

   f1=fopen(argv[1],"r");

   f2=fopen(argv[2],"w");

   while(  【19】  )fputc(fgetc(f1),f2);

   fclose(f1);

   fclose(f2);

  

`

19.以下程序的输出结果是  【20】  。

#define MAX(x,y) (x)>(y)?

(x):

(y)

main()

inta=5,b=2,c=3,d=3,t;

  t=MAX(a+b,c+D)*10;

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

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

当前位置:首页 > 考试认证 > 交规考试

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

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