当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
2015年全国计算机等级二级C语言模拟试题及答案(4)
发布时间:2010/11/4 10:31:12 来源:城市学习网 编辑:ziteng
  一.单项选择题
  1. 运算符___________的优先级最高。
  A.[ ]
  B. +=
  C. ?:
  D.++
  2.main( )
  {  int n;      ( n=6*4,n+6),n*2;       printf(“n=%d\n”,n);    }
  此程序的输出结果是______________.
  A.30
  B.  24
  C.  60
  D.  48
  3.若有如下定义,则__________是对数组元素的正确的引用。.
  int  a[10] , *p ;      p=a ;
  A.  *&a[10]
  B.  a[11]
  C.  *(p+11)
  D. *p *p *p
  4.设整型变量n的值为2,执行语句“n+=n-=n*n;”后,n的值是__________
  A.  0
  B.  4
  C.  - 4
  D.  2
  5.各种基本数据类型的存贮空间正确的长度排列为__________。
  A.Char
  C.Char
  6.下面的变量说明中_____________是正确的。
  A.char:a, b, c;
  B.char a; b; c;
  C.char a, b, c;
  D.char a, b, c
  7.表达式y=(13>12?15:6>7?8:9)的值为____________ 。
  A   9
  B   8
  C  15
  D.  1
  8.若x=5,y=3 则y*=x+5; y的值为_______________.
  A.  10
  B.  20
  C.  15
  D.  30
  9.能正确表示a和b同时为正或同时为负的逻辑表达式是_________。
  A.a>=0||b>=0)&&(a<0 ||b<0)
  B.(a>=0 && b>=0)&&(a<0 && b<0)
  C.(a+b>0) &&(a+b<=0)
  D. a*b>0
  10.C语言中,合法的字符型常数是_________。
  A.‘A’
  B.“A”
  C. 65
  D. A [NextPage]  11.已有定义 int x=3, y=4, z=5;则表达式“!(x+y)+z-1&&y+z/2”的值是________。
  A.6
  B.0
  C.2
  D.1
  12.若变量c为char类型,能正确判断出c为小写字母的表达式是_______。
  A.’a’<=c<=’z’
  B. (c>=’a’) || (c<=’z’)
  C.(‘a’<=c) and (‘z’>=c)
  D. (c>=’a’) && (c<=’z’)
  13.设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是_______。
  A.printf(“x=%d\n”,x)
  B.printf(“x=%ld\n”,x)
  C.printf(“x=?l\n”,x)
  C.printf(“x=%D\n”,x);
  14.从循环体内某一层跳出,继续执行循环外的语句是:___________。
  A. break语句
  B.return语句
  C.continue语句
  D.空语句。
  15.C语言用_______表示逻辑“真”值。
  A.true
  B.t或y
  C.非零整型值
  D.整型值0
  16.为了避免嵌套的条件分支语句if—else 的二义性,C语言规定:C程序中的else总是与_____组成配对关系。
  A.缩排位置相同的if
  B.在其之前未配对的if
  C.在其之前未配对的最近的if
  D.同一行上的if
  17.在函数中默认存储类型说明符的变量应该是________存储类型。
  A.内部静态
  B. 外部
  C.自动
  D. 寄存器
  18.C语言中以只读方式打开一个文件应选择_______________参数。
  A.“r”
  B.“w”
  C.“rb”
  D.“a”
  19.设有数组定义:char array[]=”student”;则数组所占的存贮空间为__________。
  A.6个字节
  B. 7个字节
  C. 8个字节
  D. 9个字节
  20.根据C语言的语法规则,下列________个是不合法标识符。
  A.do
  B. Name
  C. R5
  D. _exam
  [NextPage]  二.判断题
  1. C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .EXE 的文件。 (   )
  2.在 C 程序中 , 函数既可以嵌套定义 , 也可以嵌套调用。(     )
  3.在 C 程序中 ,APH 和 aph 代表不同的变量。(     )
  4.表达式 0195 是一个八进制整数。(         )
  5.Continue语句的作用是结束本次循环。(        )
  6.Extern变量的生命期是整个程序执行期。 (         )
  7.C语言中字符串的结束符是’\0’。 (         )
  8.利用fclose函数关闭已打开的文件。  (        )。
  9.C程序总是从main( ) 函数的第一条语句开始执行的。 (      )
  10.数组名代表数组的首地址。(        )
  三.填空
  1.C语言的预处理语句以__________开头。
  2.表达式7+10>2 && 25 %5的结果是_______________________。
  3.下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。
  Int  n=0, ch;        Ch=getchar( );
  While( __________________ )
  {  if ( ________________ )  n++;       c=getchar( );                }
  4.C语言中getchar() 函数的功能是_________________________________。
  5.int *p 的含义是___________________________________________。
  6.定义fp为文件型指针变量的定义方法为_______________________。
  7.数组 int  a[3][3];共定义了____________个数组元素。
  四、读程序。
  1. 改正下列程序中不正确的语句。
  main( )
  { int  a;
  scanf(“%d”, a);     if (a = 1)    printf(“One\n”) ;      }
  2.写出下列程序的运行结果。
  fun(int a, int b)
  { if(a>b) return (a);
  Else  return (b);  }
  main()
  { int x=3,y=8,z=6,r;
  r=fun(fun(x,y),2*z);     printf(“%d\n”,r);  }
  3. 改正下列程序中不正确的语句。
  main()
  { int n ;
  float s=1.0;
  for(n=10;n>1;n- -)
  s=s+1/n;
  printf(“%6.1f\n”,s);  }
  4. 写出下列程序的运行结果。
  main()
  { int n;
  For(n=3; n<=10; n++)
  { if(n%6= =0) break;   Printf(“%d”,n); }       }
  5.写出下列程序的运行结果。
  #include “stdio.h”
  Main()
  { int a[]={1,2,3,-4,5};
  int m,n,*p;     p=&a[0];      m=*(p+1);      n=*(p+4);
  printf(“%d  %d  %d  ”,*p,m,n);  }
  五.编程
  1.    编程计算下列表达式:s=n!(n从键盘上输入)
  2.输出1—100之间不能被12整除的数。
  3.从键盘上输出10个整数存入一维数组中,按由大到小的顺序输出。
  4.从键盘上输入9个数,按3行3列的格式输出。
  5.编程将文件read.txt中的字符读出显示到屏幕上。
  [NextPage]   参考答案
  一.单项选择题
  1 A 2B 3D 4C 5C
  6C 7C 8D 9D 10A
  11D 12D 13B 14A 15C
  16C 17A 18A 19C 20A
  二.判断题
  1√ 2Ⅹ 3√ 4Ⅹ 5√
  6√ 7√ 8√ 9√ 10√
  三、填空
  1 #号
  2 0
  3 ch!=’\n’ ch>=’0’ && ch<=’9’
  4 从键盘上输入一个字符。
  5 指针变量p为整型
  6 FILE *fp
  7 9
  四、读出程序。
  1 printf("%d,",&a); if (a==1)
  2 12
  3 s=s+1.0/n
  4. 3 4 5
  5 1 2 5
  五.编程序
  1.
  #include "stdio.h"
  main()
  { long t=1;
  int i;
  for(i=1;i<=10;i++)
  t=t*i;
  printf("%ld",t); }
  2
  #include "stdio.h"
  main()
  { int i;
  for(i=1;i<=100;i++)
  { if(i==0)
  continue;
  printf("%d ",i);
  }
  3.
  #include "stdio.h"
  main()
  { int i,j,a[10];
  for(i=1;i<=10;i++)
  scanf("%d",&a[i]);
  for(i=0;i<9=;i++)
  for(j=9;j>i;j--)
  if(a[j-1]{ t=a[j-1];
  a[j-1]=a[j];
  a[j]=t; }
  for(i=0;i<10;i++)
  printf("%d",a[i]);
  }
  4.
  #include "stdio.h"
  main()
  { int a[3][3],i,j,s=0;
  for(i=0;i<3;i++)
  for(j=0;j<3;j++)
  scanf("%d",&a[i][j]);
  for(i=0;i<3;i++)
  { for(j=0;j<3;j++)
  printf(“%d ”,a[i][j] );
  printf(“\n”);
  }
  }
  5.
  #include "stdio.h"
  main()
  { int c;
  FILE *fp;
  fp=open("read.txt","r");
  c=fgetc(fp);
  while(c!='\n')
  { putchar(c);
  c=fgetcr(fp);
  } }
  fclose(); }
广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved