二级C语言程序设计模拟试题(一)
一、单项选择题。(每小题1分,共20分)
1、一个C语言程序是由(  B  )组成。
A)  一个函数              B)  一个或若干个函数
C)  一个过程              D)  一个过程或若干个过程
知识点:C语言程序的结构
2C语言用(  D  )表示逻辑真值。
A)  true          B)  T            C)  整型值0        D)  0整型值
知识点:数据类型
3、如果程序中有#include "文件名" 则意味着(  A  )。
A)  "文件名"所指的那个文件的全部内容,在此命令行出现的这一点上,插    入源程序
B)  指定标准输入输出
C)  宏定义一个函数
D) 条件编译说明
知识点:编译预处理
4、为一个结构体变量分配存储空间时,其所占容量为(  B  )。
A)  结构体中第一个成员所占容量          B)  结构体中所有成员所占容量
C)  结构体中所有成员中所占容量最大者    D)  结构体中最后一个成员所占容量
知识点:结构体
5、如果int *px*py;则可用{temp=*px*px=*py*py=temp}实现*px*py    的交换。    其中temp应该说明为(  A )。
A)  int temp        B)  int &temp    C)  int **temp      D)  int *temp
知识点:指针
6、于合法的c语言长整型常量是(  A  )。
A)  12L        B)  6887273    C)  5E12        D)  long6887273
知识点:数据类型
7、下列程序输出正确的是(  A  )。
main()
{  int a=-1b=1c
  c=a++<=0&&!((b--<=0));
  printf(“%d,%d,%d”,a,b,c);
}
A)  0,0,1      B)  -1,1,1          C)  0,0,0            D)  0,1,0
知识点:逻辑运算符
8、已知EASCII码是69,则执行printf(“%c”,’D’-‘8’+’5’);的结果是(  B  )。
A)  66        B)  A          C)  B          D)  E
知识点:数据类型与自动转换
9、段名访问的方式是(  A 
A)  结构名.位段名    B)  位段名    C)  结构名          D)  *&位段名
知识点:位段
10、有字符数组a,则正确的输入语句是(  C    )。
A)  gets('a')      B)  scanf(" %c"a)    C)  scanf(" %s"a)    D)  gets(" a")
知识点:字符数组
11、如果程序中有static char c;则编译时会对其自动设置初始值为(  C   
A)  '\n'              B)  "\n"          C)  0              D)  '\0'
知识点:存储类型与静态变量
12、如果程序中有语句FILE fpfp=fopen("abc.txt""w");则程序准备做(  C  )。
A)  对文件读写操作  B)  对文件读操作  C)  字符串长度必须大于0对文件写操作  D)  对文件不操作
13、如果有#define  f(xy)  x+yint a=2b=3;则执行printf("%d"f(a,b)*f(a,b))        后的值为(    C    )。
A)  36              B)  25            C)  11                D)  13
14、在下面的说明中,(  D  )是指向函数的指针。
A)    int *p[]          B)    int (*p)[]      C)  *p()        D)    (*p)()
15、如果在C程序中有main(int argcchar *argv[]),那么(  D  )是指命令行中的参数个数。
A)    argv            B)    argv[]        C)    argcargv[]        D)    argc
16、下列程序运行的结果是(  B  )。
#include <stdio.h>
main()
{  unsigned a,b,x;
  a=0x255;
  b=a<<4
  x=(~b)&0xff
}
A)  0x55          B)  0xaf          C)  0x50        D)  0xda
17、下面程序中选择正确答案(  C 
main()
{  int k=0;
  while (printf(“*”))
  {  k++;
      if (k<3)
        break;
  }
}
A)  其中循环控制表达式与’0’等价    B)  其中循环控制表达式与0等价
C)  其中循环控制表达式与1等价    D)  其中循环控制表达式不合法
18、用文件包含形式的预处理时,#include后面的文件名用尖括号括起,寻被包含文件的方式为(  B 
A)  先在源程序所在目录搜索,再按系统设定的标准方式搜索
B)  直接按系统设定的标准方式搜索
C)  仅仅搜索当前目录
D)  仅仅搜索源程序所在目录
19、设有如下函数定义
int f(char *s)
{  char *p=s;
  while (*p)  p++;
  return (p-s);
}
如果用printf (“%d”,f(“abcdef”)); 调用该函数,则输出结果为(  B  )。
A)  0            B)  6        C)  7            D)  奇怪字符
20、程序段C  )
int x=-1;
do
{  x=x*x;
} (!x);
A)  是死循环      B)  循环执行2      C)  循环执行1      D)  不合法
二、不定项选择题。(每小题1分,共10分,错选、漏选均不得分)
1、存储类型为static 的静态变量的正确描述有(  ABE    )。
A)  静态变量有外部静态变量和内部静态变量之分。
B)  静态变量的数据类型如果是整型,则其缺省初值由编译系统赋为0
C)  内部静态变量不能赋初值。
D)  所谓全局变量就是指静态变量。
E)  外部静态变量只在本文件中可见。
2、下列哪些运算符的优先级相同且运算次序从左到右( AC )。
A)  () []  ->      B)  ++  --      C)  <  >=      D)  &&  ||      E)  &  |
3、在C语言中,下面哪些描述是正确的(  BDE  )。
A)  switch(c)语句中,c 可以是任意表达式。
B)  else if 语句可以转化为switch语句。
C)  大小写没有区别。
D)  goto语句必须与“转向标号”配合使用。
E)  C语言提供函数的递归调用机制。
4、如有说明struct{int dayint monthint year} d*pd;则下列哪些引用是正确的( ABC  )。
A)  pd->year    B)  (*pd) .year    C)  d.year    D)  *pd.year  E)  *(pd->year)
5、在C语言中,系统指定的标准设备文件有(    BCD    )。
A)  fopen      B)  stdin      C)  stdout      D)  stderr      E)  fclose
6C语言中要求所用到的变量作强制性定义,其目的是(  ACE 
A)  变量被指定类型后便于分配内存单元          B)  确定变量的数量
C)  保证程序中正确地使用变量                  D)  保证变量不同名
E)  根据变量的类型便于确定运算的合法性
7、结构化程序是由(    ADE    )组成的。
A)  顺序结构      B)  模块结构        C)  树型结构
D)  选择结构      E)  循环结构
8、下列程序中,若输入的命令行为:file1 china computer ,则输出的结果为(  B    )。
#include <stdio.h>
main(int  argc, char * argv)
{  while (--argc>0)
  printf(“%s”,*++argv);
}
A)  file1        B)  china        C)  china computer      D)  language 
9、下面(  ACDE  )是位段特性的正确描述。
A)  位段空间的分配,不受机器的限制一律从左到右
B)  可以定义位段数组                C)  位段的长度不能大于存储单元的长度
D)  位段可以用整数格式输出          E)  位段的长度可以为0
10、函数返回值的正确描述是(  ACE  )。
A)  函数的返回值是通过函数中的return语句获得 
B)  有多少个return语句就有多少个返回值
C)  在定义函数时,对函数值的说明类型与return语句表达式的类型应一致
D)  如果函数值的类型与return中表达式的类型不一致时,以表达式(应该以函数类型为准)为准
E)  当函数中没有return语句时,返回的是一个不确定的值
三、判断分析题(如正确选√;如错误选Х。每小题1分,共10分)
1、使用typedef可以自定义一种新的数据类型。        X
2、结构(struct)和联合(uion)类型实质上是相同的。 X
3、可以用顺序、分支、循环三种结构构造任何算法。       
4、如有int a=2,b=4,c=8;则表达式((a>b) && c>a) || (c>b)的值为真。   

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。