全国计算机二级C语言模拟题汇总.docx

上传人:b****5 文档编号:8266645 上传时间:2023-01-30 格式:DOCX 页数:40 大小:32.54KB
下载 相关 举报
全国计算机二级C语言模拟题汇总.docx_第1页
第1页 / 共40页
全国计算机二级C语言模拟题汇总.docx_第2页
第2页 / 共40页
全国计算机二级C语言模拟题汇总.docx_第3页
第3页 / 共40页
全国计算机二级C语言模拟题汇总.docx_第4页
第4页 / 共40页
全国计算机二级C语言模拟题汇总.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

全国计算机二级C语言模拟题汇总.docx

《全国计算机二级C语言模拟题汇总.docx》由会员分享,可在线阅读,更多相关《全国计算机二级C语言模拟题汇总.docx(40页珍藏版)》请在冰豆网上搜索。

全国计算机二级C语言模拟题汇总.docx

全国计算机二级C语言模拟题汇总

二级C语言模拟试题

2012/9/1

 一、填空题

  1.在C语言程序设计中,正确的标识符是由____________________组成的。

  2.设x=4,y=(++x)+(++x);那么y的值为_____,表达式执行后,变量x的值为_______。

  3.一个变量的指针是指_____________________________________________。

  4.能够构成一个数组,其元素满足的特点是__________________________________;

  那么,构成结构体的成员可以是_________________________________________。

  5.下面运算符<%++=按照优先级从高到低排列顺序为______________。

  6.C程序设计中语句后的符号/*……*/所起作用是_________________________。

  7.写出下面表达式的值

  3*5/7+7%3____________________

  x=2;y=4;(x++)+y_____________________

  3+4>=7-10_____________________

  3>4?

3%2:

1___________________

  x=2,y=2;++x||++y_______________

  x=3;x+=x-=2_____________________

  二、选择题

  ⑴.在使用TurboC2.0环境编辑程序时,运行某程序使用的菜单项为()

  A.FILE

  B.RUN

  C.EDIT

  D.OPTION

  ⑵.下列语句不具有赋值功能的是()

  A.a*=b

  B.x=1

  C.a+b

  D.a++

  ⑶.C语言程序中,当出现条件分支语句if~else时,else与()组成配对关系

  A.同一复合语句内部的if

  B.在其之前任意的if

  C.在其之前未配对的最近的if

  D.首行位置相同的if

  ⑷.下列数组定义方式不正确的语句是()

  A.charx[5];

  B.chary[]={‘h’,‘e’,‘l’,‘l’,‘o’};

  C.intx[10]={12,13,14,15};

  D.inty[];

  ⑸.若有如下定义和语句,且0<=i<5,下面()是对数值为3数组元素的引用

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

  p=a;

  A.*(a+2)

  B.a[p-3]

  C.p+2

  D.a+3

  ⑹.下列()表达式的值为真

  a=5;b=8;c=10;d=0

  A.a*2>8+2

  B.a&&d

  C.(a*2-c)||d

  D.a-b

  ⑺.下列字符数组长度为5的是()

  A.chara[]={‘h’,‘a’,‘b’,‘c’,‘d’};

  B.charb[]={‘h’,‘a’,‘b’,‘c’,‘d’,‘\0’};

  C.charc[10]={‘h’,‘a’,‘b’,‘c’,‘d’};

  D.chard[6]={‘h’,‘a’,‘b’,‘c’,‘\0’}

  ⑻.执行下列程序后,其结果为()

  inta[]={2,4,6,8,10,12};*p;

  p=a;

  *(p+4)=2;

  printf(“%d,%d\n”,*p,*(p+4));

  A.0,10

  B.0,2

  C.2,10

  D.2,2

  ⑼.有下列结构体,对该结构体变量stu的成员项引用不正确的是()

  structstudent

  {intm;

  floatn;

  }stu,*p;

  A.stu.n

  B.p->m

  C.(*p).m

  D.p.stu.n

  ⑽.下列函数中不能用于对文件进行输入输出操作的是()

  A.fscanf()

  B.printf()

  C.fgetc()

  D.fputs()

 三、判断题

  1.C语言程序设计可以对计算机硬件进行操作。

()

  2.在循环过程中,使用break语句和continue语句的作用是一样的。

()

  3.在函数的定义和调用过程中,形式参数和实在参数数目可以不一致。

()

  4.对于某一指针变量可以接收任何类型的值。

()

  5.在C语言程序设计中,不同类型的数在计算机内存中所占空间是不同的。

()

  6.文件指针是结构体类型,可以用表示file来定义。

()

  7.选择结构不可以使用嵌套形式,但是循环结构可以使用嵌套形式。

()

  8.在定义数组时,有时可以将该数组的维数省略。

()

  9.运算符&&+*的优先级是*优先于+优先于&&。

()

  10.任何数组都可以实现对其进行整体操作。

()

  四、程序填空题

  1.下面是实现输出九九乘法表的程序,在画线的位置填上适当的语句,使该程序完整。

  main()

  {inti,j,k;

  for(i=1;_____________;i++)

  {bsp;{

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

  printf(“%d*%d=%d”,_______________);

  printf(________________);

  }

  }

  2.设计一个自定义函数,实现如下功能:

求两个数的平方和,并且返回该和。

  自定义函数如下:

  intmax(x,y)

  {

  }

  3.设有如下面的结构体,请用C语言的语句定义出正确的结构体形式:

  学生信息:

包括(姓名,性别,年龄,分数:

根据合适情况选择各项类型)

  structstudent

  {

  }

  4.根据给出的程序段,请写出正确的结果

  x=1;p=1,sum=0;

  for(x=1;x<=5;x++)

  {p=p*x;

  sum=sum+p;}

  上面的程序段实现的功能是计算下面的式子_______________________________;

  其运行结果为_________________________________________________________。

  五、阅读程序,写出下列程序段的结果

  1.int*p,i;

  i=100;

  p=&i;

  i=*p+10;执行完上面的语句段后,i的值是______

  2.intA,B,C,m=1,n=0;

  A=(--m=n++)?

--m:

++n;

  B=++m;

  C=n--;

  执行完上面的语句段后,A的值为______B的值为______C的值为______

  3.main()

  {intc1=10,c2=10;

  printf(“c1=%d,c2=%d\nc1=%d”,++c1,c2++,c1--);

  }

  该程序的运行结果是_______________________________________________。

  4.main()

  {inti;

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

  {if(i%4==0)

  continue;

  else

  printf(“%d,”,i);

  }}

  该程序输出的结果是_______________________________________

  5.main()

  {intx;

  x=3;

  do

  {printf(“%d”,x--);

  }while(!

x);}

  该程序运行的结果是___________________________________________________________

  六、编程题

  1.编程实现:

从键盘上接收10个整数,并对其进行排序(要求排成升序)。

  2.编程实现求下面的式子的结果

  3.编程实现将文本文件file1.dat中的内容复制到文本文件file2.dat中去,同时将小写字母转换成大写字母。

 参考答案

  一、填空题

  1.字母、数字、下划线

  2.12,6

  3.该变量的地址

  4.同一类型;不同类型

  5.++%<=6.注释

  6.3,1,1,612

  二、选择题

  ⑴.B⑵.C⑶.C⑷.C⑸.A⑹.D⑺.A⑻.D⑼.D⑽.B

  三、判断题

  1.对2.不对3.不对4.不对5.对

  6.不对7.不对8.对9.对10.不对

  四、程序填空题

  1.i<=9j=1i,j,i*j“\n”

  222.intmax(x,y)

  intx,y;sp;intx,y;

  {intz;

  z=x*x+y*y;

  return(z);}

  3.structstudent

  {charxm[10];

  charsex;

  intage;

  floatscore;}

  4.1!

+2!

+3!

+4!

+5!

1+2+6+24+120=153

  五、阅读程序,写出下列程序段的结果

  1.110

  2.–101

  3.c1=10,c2=10

  c1=10

  4.3,5,6,7,9

  5.3

  六、编程题

  1.main()

  {inta[10];

  intm,n,t;

  for(m=0;m<10;m++)

  scanf(“%d”,&a[m]);

  for(m=0;m<9;m++)

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

  if(a[n]>a[n+1])

  {t=a[n];a[n]=a[n+1];a[n+1]=t;}

  for(m=0;m<10;m++)

  printf(“%d”,a[m]);

  }

  2.

  main()

  {floatx,y;

  scanf(“%f”,&x);

  if(x>6)

  y=(x+2)/(3*x+1);

  else

  y=x*x+3*x+1;

  printf(“%f”,y);

  }

  3.main()

  {FILE*fp1,*fp2;

  charch;

  fp1=fopen(“file1.dat”,“r”);

  fp2=fopen(“file1.dat”,“w”);

  ch=fgetc(fp1);

  while(ch!

=EOF)

  {

  if(ch>=’a’&&ch<=’z’)

  ch=ch-32;

  fputc(ch,fp2);fputc(ch,fp2);

  ch=fgetc(fp1);

  }bsp;}

  fclose(fp1);

  fclose(fp2);

  }

一、选择题

  1.一个C语言程序是由()构成。

  A.语句

  B.行号

  C.数据

  D.函数

  2.下面标识符中正确的是()。

  A.a#bc

  B.123ABC

  C.sime

  D.Y·M·D

  3.在C语言中,存储一个整型、字符型、双精度实型变量所需的字节数是()。

)。

)。

)。

  A.2、1、8

  B.4、1、4

  C.4、1、4

  D.2、2、8

  4.为了避免嵌套的条件分支语句if--else中的else总是与()组成成对关系。

  A.缩排位置相同的

  B.在其之前未配对的

  C.在其之前未配对的最近的if

  D.在同一行上的if

  5.下列表达式的结果正确的是()。

  inta,b,c,d;

  a=b=c=d=2;

  d=a+1==3?

b=a+2:

a+3

  A.2B.4C.3D.5

  二、填空题

  1.在C语言中,正确的标识符是由______________________组成的,且由_______________开头的。

  2.设x=3,那么表达式y=(++x)+(++x)的结果为_________,表达式执行后,变量x的结果为_________。

  3.一个变量的指针是指_________________________________________________________________。

  4.组成数组元素的特点是_______________________________________________;

  组成结构体元素的特点是________________________________________________。

  5.在C语言程序中,对文件进行操作首先要______________________________;然后对文件进行操作,最后要对文件实行__________________________________操作,防止文件中信息的丢失。

  6.对字符串进行操作的函数有_______________________________________________________等。

  7.C语言程序是由___________________构成的,而C语言的函数是由____________________构成的。

  8.要想定义整型变量a,实型变量b,字符型的变量c,应该使用的正确语句为______________________________________________________________________________________。

  9.写出下面表达式的值

  3*5/7+7%3_______________________x=2;y=4;(x++)+y_________________________

  3+4>=7-10_______________________3>4?

3%2:

1______________________________

  x=2,y=2;++x&&++y_________________x=3;x+=x-=2______________________________

  三、判断题

  1.C语言的一个特点是可以对计算机硬件进行操作()

  2.在循环过程中,使用break语句和continue语句的作用是一样的()

  3.在函数的定义和调用过程中,形式参数和实在参数数目可以不一致()

  4.指针变量可以接收任何类型的值()

  5.在C语言程序设计中,字符数组和字符串不是完全一样的概念()

  6.文件指针是结构体类型,用符号file来表示()

  7.选择结构(if语句)和循环结构都可以使用嵌套形式()

  8.在定义二维数组时,可以将该数组的两个维数全部省略()

  9.逻辑运算符&&||!

的运算顺序是!

优先于&&优先于||()

  10.任何数组都可以实现整体使用操作()

四、程序填空题

  1.下面是实现打印九九乘法表的程序,请在画线的位置填上适当的语句,使程序(段)完整。

  main()

  {inti,j,k;

  for(i=1;_____________;i++)

  {for(j=1;______________;j++)

  printf(“%d*%d=%d”,_______________);

  printf(________________);

  }

  }

  2.自己设计一个自定义函数,实现求两个数的最大数的功能,自定义函数如下:

  intmax(x,y)

  intx,y;

  {

  }

  3.设有如下面的结构体,请用C语言的语句定义出正确的结构体形式:

  学生信息:

包括(姓名,性别,年龄,分数),并且定义变量stud和数组stud1[30]

  structstudent

  {

  }

  4.根据给出的程序段,请写出正确的结果

  x=1;sum=1;

  for(x=1;x<=5;x++)

  sum=sum*x;

  上面的程序段实现的功能是:

______________________________________________________;

  其运行结果为______________________________________________________________________。

  5.设有如下的语句。

  inta=43,b,c;

  b=23;

  c=a++*--b;

  

(1)上面的语句段执行后a=b=c=;

  

(2)简述a++和++a的相同点和不同点:

  6.设有如下的程序:

  main()

  {inti=3,*p1;

  inta[3]={15,30,45},*p2;

  p1=&i;p2=a;

  p1=p2+2;

  printf(“%d,%d\n”,*p1,*p2);

  }

  程序运行结果是:

_______。

  五、编程题(25分)

  1.编程实现对10个整数进行冒泡排序(要求排成升序)。

  2.编程实现求下面的式子的结果

  3.编程实现将文本文件file1.dat中的内容复制到文本文件file2.dat中去

  六、附加题

  用C语言程序实现在已知链表中的第三个位置插入数值为a的程序

参考答案

  一、选择题

  1.D2.C3.A4.C5.B

  二、填空题

  1.字母、数字、下划线;以字母、下划线开头。

  2.10;5。

  3.该变量的地址。

  4.一组数据类型相同的元素构成的;一组数据类型不同的元素构成的。

  5.打开;关闭。

  6.字符串长度、取子字符串、字符串替换、字符串复制等。

  7.函数;语句。

  8.inta;floatb;charc;

  999.361112

  三、判断题

  1.对2.错3.错4.错5.对

  6.错7.对8.错9.对10.错

  四、程序填空题

  1.i<=9j<=9

  printf(“%d*%d=%d”,i,j,i*j);

  printf(“\n”);i,j,k;

  2.intz;

  if(x>=y)z=x;

  elsez=y;

  returnz;

  3.charname[20];

  charsex;

  intage;

  floatscore;

  4.实现功能:

计算连续数之积,即sum=1*2*3*4*5;

  运行结果:

sum=120

  5.4422946

  a++:

先加1,后使用表达式的值;++a表示先加1,后使用表达式的值,它们最后的结果使a加1。

  6.45,15

  五、编程题

  1.编程实现对12个整数进行冒泡排序(要求排成升序)。

  Main()

  {inta[12];intm,n,p;

  for(m=0;m<=11;m++)(m=0;m<=11;m++)

  scanf(“%d”,&a[m]);

  for(m=0;m<=11;m++)

  for(n=0;n<11-m;n++)

  if(a[n]>a[n+1])

  {p=a[n];a[n]=a[n+1];a[n+1]=p;}

  for(m=0;m<=11;m++)

  printf(“%d”,a[m]);}

  2.编程实现求下面的式子的结果

  #include“math.h”

  main()

  {floatx,y;

  scanf(“%f”&x);

  if(x>6)y=(x-3)/(2*x-12);

  elsey=-2*x*x+4*x-10;

  printf(“y=%f”,y);}

  3.编程实现将文本文件file1.dat中的内容复制到文本文件file2.dat中去

  main()

  {charch;

  FILE*fp1,*fp2;

  Fp1=fopen(“file1.dat”,“r”);

  Fp2=fopen(“file2.dat”,“w”);

  Ch=fgetc(fp1);

  While(ch!

=EOF)

  {fputc(ch,fp2);

  Ch=fgetc(fp1);}

  Fclose(fp1);

  Fclose(fp2);}

  六、附加题

  p=H;K=0;

  While(p!

=NULL&&k

  {p=p->next;

  k++;}

  if(p==NULL&&H!

=NULL)printf(“thisisinvilid”);

  else

  {q=(StructLinklist*)malloc(sizeof(StructLinklist));

  q->data=x;q->data=x;

  q->next=p->next;

  p->next=q;}

 

一、选择题

  1.一个C语言程序是由()构成。

  A.语句

  B.行号

  C.数据

  D.函数

  2.下面标识符中正确的是()。

  A.d&ef

  B.6a

  C.z4x5c

  D.a3/b4

  3.在C语言中,存储一个字符型、整型、单精度实型变量所需的空间是()。

型、单精度实型变量所需的空间是()。

  A.1、2、4

  B.1、1、4

  C.1、2、8

  D.2、2、8

  4.为了避免嵌套的条件分支语句if--else中的else总是与()组成成对关系。

  A.缩排位置相同的

  B.在其之前未配对的

  C.在其之前未配对的最近的if

  D.在同一行上的if

  5.下列表达式的结果正确的是()。

  intaa,bb,cc,dd;

  aa=bb=cc=dd=1;sp;aa=bb=cc=dd=1;sp;aa=bb=cc=dd=1;

  (aa+1==2)?

bb=aa+2:

aa+3

  A.2

  B.3

  C.1

  D.5

  6.设有intx=11;则表达式(x+1/3)的值是()。

  A.3

  B.4

  C.11

  D.12

  7.设有字符串A=“Hehas钱!

”,则

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

当前位置:首页 > IT计算机 > 计算机软件及应用

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

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