计算机等级二级C笔试考前练习习题.docx

上传人:b****5 文档编号:8792424 上传时间:2023-05-15 格式:DOCX 页数:16 大小:19.10KB
下载 相关 举报
计算机等级二级C笔试考前练习习题.docx_第1页
第1页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第2页
第2页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第3页
第3页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第4页
第4页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第5页
第5页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第6页
第6页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第7页
第7页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第8页
第8页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第9页
第9页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第10页
第10页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第11页
第11页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第12页
第12页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第13页
第13页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第14页
第14页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第15页
第15页 / 共16页
计算机等级二级C笔试考前练习习题.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算机等级二级C笔试考前练习习题.docx

《计算机等级二级C笔试考前练习习题.docx》由会员分享,可在线阅读,更多相关《计算机等级二级C笔试考前练习习题.docx(16页珍藏版)》请在冰点文库上搜索。

计算机等级二级C笔试考前练习习题.docx

计算机等级二级C笔试考前练习习题

计算机等级二级C笔试考前练习习题一

1.打开一个已经存在的非空文本文件,若文件名为stu,则正确的打开语句为()

  A)FILE*fp;

  fp=fopen("stu.txt","r")

  B)FILE*fp;

  fp=fopen(stu.txt,r)

  C)FILE*fp;

  fp=fopen("stu.txt","wb")

  D)FILE*fp;

  fp=fopen("stu.txt",wb)

2.设有如下程序:

  charsub(char*q)

  {while(*q!

=′\0′)

  {if(*q>=′A′&&*q<=′Z′)*q=*q+32;

  elseif(*q>=′a′&&*q<=′z′)*q=*q-32;

  printf("%c",*q);

  q++;}}

  main()

  {char*s="abcABC";

  sub(s);}

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

  A)ABCabc

  B)abcABC

  C)abcabc

  D)ABCABC

  3.在下列语句中,正确的是()

  A)staticcharstr[]="China";

  B)staticcharstr[];str="China";

  C)staticcharstr1[5],str2[]={"China"};str1=str2;

  D)staticcharstr1[],str2[];str2={"China"};strcpy(str1,str2);

4.若在fopen函数中使用文件的方式是"wb+",该方式的含义是()

  A)为读/写打开一个文本文件

  B)为输出打开一个文本文件

  C)为读/写建立一个新的文本文件

  D)为读/写建立一个新的二进制文件

5.以下关于宏与函数的叙述中正确的是()

  A)使用函数或宏命令对C的源程序都没有影响

  B)函数具有类型,宏不具有类型

  C)函数调用和带参的宏调用都是将实参的值传给形参

  D)使用函数比使用宏运行速度快

6.有以下程序:

  intx=1,y=2;

  voidfun1()

  {x=3;y=4;}

  voidfun2(intx,inty)

  {printf("%d,%d,\n",x,y);}

  main()

  {fun1();

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

  fun2(5,6);

  }

  程序的运行结果是()

  A)1,2,3,4

  B)1,2,5,6

  C)3,4,5,6

  D)3,4,1,2

7.若有如下调用函数:

  intsub(int*t)

  {return(t);}

  该函数的返回值是()

  A)形参t中存放实参变量的地址值

  B)形参t自身的地址值

  C)指针变量t所指的实参变量的值

  D)随机的值

8.下面程序的输出结果是()

  #definePI3.1415

  #defineARE(x)PI*x*x

  main()

  {intr=2;

  printf("%f",ARE(r+1));

  }

  A)28.26

  B)28.260000

  C)9.28

  D)9.280000

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

  main()

  {

  inta=2,k;

  for(k=0;k<3;k++)printf("M",f1(a));

  }

  f1(inta)

  {

  intb=0;staticintc=3;

  b++;c++;

  return(a+b+c);}

  A)777

  B)71013

  C)7911

  D)789

10.在下面关于指针的说法中,错误的一条是()

  A)变量的指针就是变量的地址

  B)可以将一个整型量或任何其他非地址类型的数据赋给一个指针变量

  C)一个指针变量只能指向同一个类型的变量

  D)指针变量中只能存放地址(指针)

  答案:

  1.A2.A3.A4.D5.B6.C7.A8.D9.D10.B

计算机等级二级C笔试考前练习习题二

1.sizeof(double)是()

  A)一种函数调用

  B)一个双精度型表达式

  C)一个整型表达式

  D)一个不合法的表达式

2.以下选项中错误的是()

  A)char*sp;gets(sp);

  B)charsp[5];gets(sp);

  C)char*sp="12345";gets(sp);

  D)charsp[5]="\0";gets(sp);

3.在宏定义#definePI3.14159中,用宏名PI代替一个()

  A)单精度数

  B)双精度数

  C)常量

  D)字符串

4.设有如下定义:

  char*aa[2]={"abcd","ABCD"};

  则以下说法中正确的是()

  A)aa数组元素的值分别是"abcd"和"ABCD"

  B)aa是指针变量,它指向含有两个数组元素的字符型一维数组

  C)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址

  D)aa数组的两个元素中各自存放了字符′a′和′A′的地址

5.有以下程序:

  #include

  voidfun(int*s,int**d)

  {**d=*(s+2);}

  main()

  {inta[]={1,2,3,4,5},*b;

  b=(int*)malloc(sizeof(int));

  fun(a,&b);

  printf("%d\n",*b+1);

  }

程序的输出结果是()

  A)2

  B)3

  C)4

  D)5

6.若有如下程序:

  sub(intx)

  {inty=0;staticintz=1;

  y+=x+2;z+=y+x;

  return(z);}

  main()

  {intt=1,n;

  for(n=0;n<3;n++)printf("%d,",sub(t));}

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

  A)5,5,5

  B)5,9,13,

  C)5,7,9,

  D)5,8,11,

7.若有如下定义和声明:

  structs

  {intm;charch;doublex;

  uniont{chara[6];intb[3];}tt;}ss;

  则sizeof(structs)的值是()

  A)6

  B)14

  C)17

  D)20

8.以下选项中的表达式调用库函数依次求-4.5的绝对值、-4.0的平方根值、30°角的正弦值和2的3次方值。

正确的调用是()

  A)abs(-4.5)

  B)sqrt(-4.0)

  C)sin(3.1416/6.0)

  D)paw(2.0,3.0)

9.若有如下程序:

  #definePI3.1415926

  #defineA(r)2*PI*r

  main()

  {floata,l;

  a=3.0;

  l=A(a);

  printf("r=%.2f,l=%.2f\n",a,l);}

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

  A)r=3.00l=18.85

  B)3.00,18.85

  C)r=3.000000l=18.8495555

  D)r=3.0l=18.8495555

10.若有如下程序:

  #include"stdio.h"

  voidmain()

  {FILE*fp;

  fp=fopen("test","wb")

  fprintf(fp,"%d%.1f,%c%c",5,238.41,′B′,′h′);

  fclose(fp);}

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

  A)5238.41

  BhB)5238.4,Bh

  C)5,238.4,B,h

  D)5238.41Bh

答案:

1.C2.A3.D4.C5.C6.B7.C8.C9.A10.B

计算机等级二级C笔试考前练习习题三

1.若有如下程序:

  voids(char*m,intn)

  {*m=*m+3;n=n+3;

  printf("%c,%c,",*m,n);}

  main()

  {charp=′b′,q=′B′;

  s(&q,p);

  printf("%c,%c\n",p,q);}

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

  A)E,e,b,E

  B)e,E,b,F

  C)E,e,e,E

  D)e,E,b,E

2.在C语言的函数中()

  A)必须有形参

  B)形参必须是变量名

  C)可以有也可以没有形参

  D)数组名不参与形参

3.若有如下程序:

  sub(int*t,intn)

  {int*p1,*p2;

  for(p1=t,p2=t;p1-t  if(*p1<*p2)p2=p1;

  return(*p2);}

  main()

  {inta[9]={9,36,19,39,26,5,6,33,15};

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

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

  A)5

  B)9

  C)15

  D)39

4.在表示C语言的整型变量时,表示“无符号整型”的符号是()

  A)unsignedint

  B)unsignedshort

  C)longint

  D)unsignedlong

5.以下程序段给数组所有的元素输入数据,请选择正确答案填入。

()

  #include

  main()

  {inta[10],i=0;

  while(i<10)scanf("%d",);

  …

  }

  A)a+(i++)

  B)&a[i+1]

  C)a+i

  D)&a[i++]

6.若输入60和13,以下程序的输出结果为()

  #defineSURPLUS(a,b)((a)%(b))

  main()

  {inta,b;

  scanf("%d,%d",&a,&b);

  printf("\n",SURPLUS(a,b));

  }

  A)60

  B)13

  C)73

  D)8

7.在下列叙述中,正确的一条是()

  A)语句int*pt中的*pt是指针变量名

  B)语句“int*p=a;”等价于“int*p;p=&a[0];”

  C)运算符*和&都是取变量地址的运算符

  D)已知指针变量p指向变量a,则&a和*p值相同,都是变量a的值

8.设有定义:

#defineSTR"12345";,则以下叙述中正确的是()

  A)宏名STR代替的是数值常量12345

  B)宏定义以分号结束,编译时一定会产生错误信息

  C)宏名STR代替的是字符串"12345";

  D)宏名STR代替的是字符串常量"12345"

9.fprintf函数的一般调用方式是()

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

  B)fprintf(文件指针,格式字符串,输出表列)

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

  D)fprintf(fp,格式字符串,输出表列);

10.函数调用语句:

fseek(fp,-20L,SEEK_END);的含义是()

  A)将文件位置指针移到距离文件头20个字节处

  B)将文件位置指针从当前位置向后移动20个字节

  C)将文件位置指针从文件末尾处向后退20个字节

  D)将文件位置指针移到离当前位置20个字节处

答案:

1.A2.C3.A4.A5.D6.D7.D8.C9.C10.C

计算机等级二级C笔试考前练习习题四

1.下面程序的输出结果是()

  func(intx)

  {staticinta=2;

  return(a+=x);}

  main()

  {intb=2,c=4,d;

  d=func(b);

  d=func(c);

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

  A)4

  B)6

  C)8

  D)12

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

  main()

  {chars[]="1234",*ps;

  for(ps=s;ps

  printf("\n");

  }

  A)123

  B)112123

  C)1234

  D)乱码

3.以下关于宏的叙述中正确的是()

  A)宏名必须用大写字母表示

  B)宏替换时要进行语法检查

  C)宏替换不占用运行时间

  D)宏定义中不允许引用已有的宏名

4.如果文件1包含文件2,文件2中要用到文件3的内容,而文件3中要用到文件4的内容,则可在文件1中用三个#include命令分别包含文件2、文件3和文件4。

在下列关于这几个文件包含顺序的叙述中,正确的一条是()

  A)文件4应出现在文件3之前,文件3应出现在文件2之前

  B)文件2应出现在文件3之前,文件3应出现在文件4之前

  C)文件3应出现在文件2之前,文件2应出现在文件4之前

  D)出现的先后顺序可以任意

5.有以下程序段

  main()

  {chara[7]="abcdef";

  charb[4]="ABC";

  strcpy(a,b);

  printf("%c",a[5]);

  }

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

  A)a

  B)\0

  C)e

  D)f

6.下面程序的输出结果是()

  #include

  f(b,n)

  intb[],n;

  {inti,r;

  r=1;

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

  r=r*b[i];

  returnr;

  }

  main()

  {intx,a[]={2,3,4,5,6,7,8,9};

  x=f(a,3);

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

  }

  A)720

  B)120

  C)24

  D)6

7.下面程序的输出结果是()

  #include"stdio.h"

  fun(x)

  intx;

  {

  inty=0;

  staticintz=5;

  z=x++,y++;

  return(z);

  }

  main()

  {

  inta=4,i,j;

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

  j=fun(a++);

  printf("%d",j);

  }

  A)0

  B)3

  C)4

  D)5

8.对于以下程序段,设a和q都是整型变量,

  …

  a=q;

  Loop∶if(a==0)gotoEnd;

  Elseif(a>0){printf("&");a--;gotoLoop;}

  ElsegotoEnd;

  End;

  …

不能与上面程序等价的是()

  A)a=q;

  do

  {f(a<0)break;

  a--;printf("*");

  }while(a);

  B)a=q;

  for(;a>0;a--)printf("&");

  C)a=q;

  while(a)

  {printf("&");a--;}

  D)for(a=q;a>0;--a,printf("*"));

9.有以下程序

  #include

  #definePT5.5

  #defineS(x)PT*x*x

  main()

  {inta=1,b=2;

  printf("%4.1f\n",S(a+b));

  }

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

  A) 49.5

  B) 9.5

  C) 22.0

  D) 45.0

10.设有以下语句:

  structSS

  {intno;charname[10];}PERSON;

  则下面叙述中错误的是()

  A)struct是结构体类型的关键字

  B)structSS是结构体类型

  C)PERSON是结构体类型名

  D)name是结构体成员名

答案:

1.C2.D3.C4.A5.D6.B7.D8.C9.B10.C

 

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

当前位置:首页 > 求职职场 > 职业规划

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

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