计算机二级c语言考试试题及答案.docx

上传人:b****0 文档编号:9370412 上传时间:2023-05-18 格式:DOCX 页数:10 大小:17.62KB
下载 相关 举报
计算机二级c语言考试试题及答案.docx_第1页
第1页 / 共10页
计算机二级c语言考试试题及答案.docx_第2页
第2页 / 共10页
计算机二级c语言考试试题及答案.docx_第3页
第3页 / 共10页
计算机二级c语言考试试题及答案.docx_第4页
第4页 / 共10页
计算机二级c语言考试试题及答案.docx_第5页
第5页 / 共10页
计算机二级c语言考试试题及答案.docx_第6页
第6页 / 共10页
计算机二级c语言考试试题及答案.docx_第7页
第7页 / 共10页
计算机二级c语言考试试题及答案.docx_第8页
第8页 / 共10页
计算机二级c语言考试试题及答案.docx_第9页
第9页 / 共10页
计算机二级c语言考试试题及答案.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算机二级c语言考试试题及答案.docx

《计算机二级c语言考试试题及答案.docx》由会员分享,可在线阅读,更多相关《计算机二级c语言考试试题及答案.docx(10页珍藏版)》请在冰点文库上搜索。

计算机二级c语言考试试题及答案.docx

计算机二级c语言考试试题及答案

计算机二级c语言考试试题及答案

  为帮助同学们在中能轻松通过考试,为大家整理了历年的计算机二级考试题及答案,希望对大家有所帮助!

  计算机考试题【一】

  1.若以下对fun函数的调用是正确的:

  x=fun(fun(a,b,c),(a+b,a+c),a+b+c);

  则fun函数的形参个数为()

  A)3B)4C)5D)6

  2.若有说明:

int*p,m=5;n;,以下正确的程序段是()

  A)p=&m;

  scanf("%d",&p)

  B)p=&n;

  scanf("%d",&p)

  C)scanf("%d",&p)

  p=&n;

  D)p=&n;

  p=&m;

  3.以下程序调用findmax函数返回数组中的最大值

  findmax(int*a,intn)

  {int*p,*s;

  for(p=a,s=a;p-a  if()s=p;

  return(*s);

  }

  main()

  {intx[5]={12,21,13,6,18};

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

  }

  在下划线处应填入的是()

  A)p>sB)*p>*sC)a[p]>a[s]D)p-a>p-s

  4.若指针p已正确定义,要使p指向两个连续的整型动态存储单元,则正确语句是()

  A)p=2*(int*)malloc(sizeof(int));

  B)p=(int*)calloc(2*sizeof(int));

  C)p=(int*)malloc(2*sizeof(int));

  D)p=2*(int*)calloc(sizeof(int));

  5.下列程序的输出结果是()

  main()

  {char*p1,*p2,str[50]="xyz";

  p1="abcd";

  p2="ABCD";

  strcpy(str+2,strcat(p1+2,p2+1));

  printf("%s",str);

  }

  A)xyabcABB)abcABzC)AbabczD)XycdBCD

  6.以下叙述中不正确的是()

  A)一个变量的作用域完全取决于变量定义语句的位置

  B)全局变量可以在函数以外的任何部位进行定义

  C)局部变量的“生存期”只限于本次函数调用,因此不可能将局部变量的运算结果保存至下一次调用

  D)一个变量说明为static存储类是为了限制其他编译单位的引用

  7.交换两个变量的值,不允许用临时变量,应该使用下列哪一个位运算符()

  A)~B)&C)^D)|

  8.下面的说法不正确的是()

  A)函数调用时,先求出实参表达

  B)函数调用是在程序运行时处理的,分配临时的内存单元。

而宏展开则是在编译时进行的,在展开时也要分配内存单元,进行值传递

  C)对于函数中的实参和形参都要定义类型,二者的类型要求一致,而宏不存在类型问题,宏名有类型

  D)调用函数只可得到一个返回值,而用宏可以设法得到几个结果

  9.fscanf函数的正确调用形式是()

  A)fscanf(fp,格式字符串,输出表列);

  B)fscanf(格式字符串,输出表列,fp);

  C)fscanf(格式字符串,文件指针,输出表列);

  D)fscanf(文件指针,格式字符串,输入表列);

  10.以下程序的运行结果是()

  #defineMAX10

  inta[MAX],i;

  main()

  {printf("\n");sub1();sub3(a);sub2();sub3(a);

  }

  sub2()

  {inta[MAX],i,max;

  max=5;

  for(i=0;i  }

  sub1()

  {for(i=0;i  }

  sub3(inta[])

  {inti;

  for(i=0;i  printf("\n");

  }

  A)024681012141618

  01234

  B)01234

  024681012141618

  C)0123456789

  01234

  D)024681012141618

  024681012141618

  答案:

1.A2.D3.B4.C5.D6.B7.C8.B9.D10.D

  计算机考试题【二】

  1.若有如下程序:

  main()

  {chara[]="china\0name\0";

  printf("%d,",strlen(a));

  printf("%d\n",sizeof(a));}

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

  A)5,11B)5,12C)11,11D)12,12

  2.指针变量p的基类型为int,并已指向一连续存储区,若p中当前的地址值为1234,则执行p++后,p中的值为()

  A)1234B)1235C)1236D)1237

  3.函数调用“strcat(strcpy(str1,str2),str3)”的功能是()

  A)将串str1拷贝到串str2中后再连接到串str3之后

  B)将串str1连接到串str2之后再拷贝到串str3之后

  C)将串str2拷贝到串str1中后再将串str3连接到串str1之后

  D)将串str2连接到串str1之后再将串str1拷贝到串str3中

  4.下面宏定义正确的是()

  A)#defineSa*b

  B)#definePI3.14;

  C)#definemax(a,b)((a)>(b)?

(a)∶(b))

  D)#defines(x)(x)*(x);

  5.下面叙述正确的是()

  A)函数调用不可以出现在表达式中

  B)函数调用可以作为一个函数的实参

  C)函数调用可以作为一个函数的形参

  D)函数不可以直接调用其本身

  6.有如下程序

  #include

  main()

  {intv1=0,v2=0;

  charch;

  while((ch=getchar())!

='#')

  switch(ch)

  {case ′a′:

  case ′h′:

  default:

v1++;

  case′0′:

 v2++;

  }

  printf("%d,%d\n",v1,v2);

  }

  如果从键盘上输入china#<回车>,则程序运行结果为()

  A)2,0B)5,0C)5,5D)2,5

  7.程序中头文件type1.h的内容是:

  #defineN5

  #defineM1N*3

  程序如下:

  #include"type1.h"

  #defineM2N*2

  main()

  {inti;

  i=M1+M2;printf("%d\n",i);}

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

  A)10B)20C)25D)30

  8.规定函数返回值的类型由()

  A)在定义时所指定的函数类型所决定

  B)调用该函数时的主调函数类型所决定

  C)return语句中的表达式类型所决定

  D)调用该函数时系统临时决定

  9.若有如下程序:

  main()

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

  printf("%d%d%d\n",a[0][1],a[1][2],a[2][3]);}

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

  A)270B)480C)160D)不定值

  10.以下能将字符串:

youareluck!

正确读入的语句组是()

  A)chars[80];scanf("%s",s);

  B)char*s;scanf("%s",s);

  C)chars[80];gets(s);

  D)char*s;gets(s);

  答案:

1.B2.C3.C4.C5.B6.C7.C8.A9.A10.C

  计算机考试题【三】

  1.执行下面的程序段

  intx=40;

  charz=′B′;

  intB;

  B=((x&0xff)&&(z>′a′));

  后,B的值为()

  A)0B)1C)2D)3

  2.已知下列函数定义

  setw(int*b,intm,intn,intdat)

  {intk;

  for(k=0;k  {*b=dat;b++;}

  }

  则调用此函数的正确写法是(假设变量a的说明为inta[50])()

  A)setw(*a,5,8,1);B)setw(&a,5,8,1);C)setw((int*)a,5,8,1);D)setw(a,5,8,1);

  3.若有以下定义和语句:

  doubler=99,*p=7;

  *p=r;

  则以下正确的叙述是()

  A)两处的*p含义相同,都说明给指针变量p赋值3

  B)在“doubler=99,*p=7;*p=r;”中,把r的地址赋给了p所指的存储单元

  C)语句“*p=r;”把变量r的值赋给指针变量p

  D)语句“*p=r;”把变量r的值放回p中

  4.设有charstr[10],下列语句正确的是()

  A)scanf("%s",&str);B)printf("%c",str);C)printf("%s",str[0]);D)printf("%s",str);

  5.下列描述说明正确的是()

  A)定义结构体时,它的每个成员的数据类型可以不同

  B)不同结构体的成员名不能相同

  C)结构体定义时,其成员的数据类型不能是结构体本身

  D)结构体定义时各成员项之间可用分号也可用逗号隔开

  6.以下函数的功能是()

  intfun(char*a)

  {char*b=a;

  while(*b)b++;

  {returnb-a;}

  }

  A)比较两个字符串的大小B)字符串的复制C)计算字符串的长度D)字符串的连接

  7.若有如下程序:

  #defineX3

  #defineYX+1

  #defineZY*Y/2

  main()

  {intn;

  for(n=1;n<=Z;n++)printf("%d",n);}

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

  A)12345B)1234567C)12345678D)123456

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

  A)局部变量的定义可以在函数体和复合语句的内部

  B)全局变量的定义可以在函数以外的任何部位

  C)同一程序内局部变量和全局变量不允许同名

  D)函数的形参属于局部变量

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

  A)二进制文件打开后可以先读文件的末尾,而顺序文件不可以

  B)在程序结束时,应当用fclose函数关闭已打开的文件

  C)在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据

  D)不可以用FILE定义指向二进制文件的文件指针

  10.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是()

  A)EOFB)0C)非零值D)NULL

  答案:

1.A2.D3.D4.D5.A6.C7.D8.C9.D10.C

  计算机考试题【四】

  1.有以下程序:

  main()

  {intx=0xFFFF;printf("%d\n",x--);}

  执行后的输出结果是()

  A)32767B)FFFEC)-1D)-32768

  2.以下程序的输出结果是()

  #include

  #include

  main()

  {charstr[12]={′s′,′t′,′r′,′i′,′n′,′g′};

  printf("%d\n",strlen(str));

  }

  A)6B)7C)11D)12

  3.若有以下定义:

  chars[20]="programming",*ps=s;

  则不能代表字符o的表达式是()

  A)ps+2B)s[2]C)ps[2]D)ps+=2,*ps

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2