C语言复习题
一、 选择题
1.Turbo C float类型变量所字节数是_______
A. 1            B. 4          C. 3            D. 2
2. 可在C程序中作为用户标识符的一组是         
A. and
B. Date
C. Hi
D. case
  _2007
  y-m-d
  Dr.Tom
  Bigl
3. 以下选项中,合法的一组C语言数值常量是         
A. 028
B. 12.
C.  .177
D. 0x8A
  .5e-3
  0xa23
  4e1.5
10,000
  .0xf
  4.5e1
  0abc
  3.e5
4.以下关于longintshort类型数据占用内存大小的叙述中正确的是         
A. 均占4个字节
B. 根据数据的大小来决定所占内存的字节数
C. 由用户自己定义
D. C语言编译系统决定
5. 要表示年龄(age)在1825之间,正确的表达式是         
A.18<=age<=25            B.18<=age && age<=25
C. 18<=age || age<=25        D.18<=age and  age<=25
6. C语言中,能代表逻辑值""的是_______
  A. 0的数          B. 大于0的数      C. 0整数        D. true
7.以下运算符中优先级最高的是_______
A.!                  B. =                C. +              D. ||
8.ab均为float型常量,且a=5.5b=2.5,则表达式b/b+(int)a的值是______   
A. 6.500000      B. 5.000000       C. 5.500000  D. 6.000000
9. 可在C程序中作为用户标识符的一组是         
A. and
B. Date
C. Hi
D. case
  _2007
  y-m-d
  Dr.Tom
  Bigl
10. 以下选项中,合法的一组C语言数值常量是         
A. 028
B. 12.
C.  .177
D. 0x8A
  .5e-3
  0xa23
  4e1.5
10,000
  .0xf
  4.5e1
  0abc
  3.e5
11. 以下关于longintshort类型数据占用内存大小的叙述中正确的是         
A. 均占4个字节
B. 根据数据的大小来决定所占内存的字节数
C. 由用户自己定义
D. C语言编译系统决定
12.以下关于C语言标识符的描述中,正确的是____
A. 标识符可以由汉字组成          B. 标识符只能以字母开头
C. 关键字可以作为用户标识符      D. Areaarea是不同的标识符
13.以下正确的叙述是_______
    A. C语言中,main函数必须位于文件的开头
    B. C语言每行中只能写一条语句
    C. C语言本身没有输入、输出语句
D. 对一个C语言进行编译预处理时,可检查宏定义的语法错误
14.以下程序的运行结果是_______
  #define PI  3.14159
  main()
  { int a,k=1;
a=k*PI;
printf(%d\n,a); }
  A. 3.14159            B.3.15        C.3              D. 3.0
15.要表示年龄(age)在1825之间,正确的表达式是         
A.18<=age<=25            B.18<=age && age<=25
C. 18<=age || age<=25        D.18<=age and  age<=25
16.调用函数的实参与被调用的形参应该有如下关系         
A. 只要求实参和形参个数相等
B. 只要求实参和形参顺序相同
C. 只要求实参和形参数据类型相同
D. 上述三点均需具备
17.C语言规定:在一个源程序中,main函数的位置         
A. 必须在最开始
B. 可以任意
C. 必须在系统调用的库函数的后面
D. 必须在最后
18.以下程序执行后的输出结果是_______
main()
{ int x=10,y=20,z=30;
  if(x>y)  z=x ;
    x=y ;  y=z ;字符串常量在内存中占的字节数
printf("%d,%d,%d\n",x,y,z);
}
A. 10,20,30        B. 20,30,30              C. 20,30,20        D. 20,30,10
19. 有以下程序   
main()
{ int a=15 ,m=0;
  switch(a%3)
  {case 0: m++;break;
  case 1:m++; 
  }
printf("%d\n",m);
}
程序运行后的输出结果是______
  A. 1             B. 2             C. 3             D. 4
20.C语言中,能代表逻辑值""的是         
    A. true          B. 大于0的数      C. 0整数        D. 0的数
21.当执行以下程序段时,
                int  x;  scanf(%d,&x); do {  x--;  }  while(x<=11);
当输入10时,循环体将       
A. 执行一次              B. 执行两次
C. 执行无限次            D. 系统提示有语法错误
22.以下程序执行         
    #include stdio.h
    #define N  5
    #define M  N+1
    #define NUM  M*M/2
    main()
    {
int i,n=0;
      for(i=1;i<=NUM;i++) { n++;printf(%d ,n);}
      printf(\n);
23.下列程序的执行结果是_______
    # include <stdio.h>
    main( )
    {  int a=5;
        int x=3;
        a*=x*4;
        printf (%d\n, a);
      }
    A.  61        B.  60          C.  62          D. 63
24.下列描述中不正确的是_______
A.字符型数组中可以存放字符串
B.可以对字符型数组进行整体输入、输出
C.可以对整型数组进行整体输入、输出
D.不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值
25.有如下程序   
main()
{ int x=11;
do
printf("%d\n",x) ; 
while(x<10);
}
该程序的执行结果是_______
A.  10           B.  11            C. 12        D.  无输出结果
26.以下程序执行后的输出结果是_______
main()
    {  int i ,fact =1 ;
    for(i=1;i<=4;i++)
    fact * = i ;                         
      printf(%d,fact) ;
}
A.  1              B.  4                  C.  24          D.  120
27.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同
这个选项是         
A. k%2
B. k%2==1
C. (k%2)!=0
D. !k%2==1
28.设有定义:int a=2,b=3,c=4;则以下选项中值为0的表达式是         
A. (!a==1)&&(!b==0)
B. (a<b)&&!c||1
C. a&&b
D. a||(b+b)&&(c-a)
29.有以下程序段
int k=0,a=1,b=2,c=3;
k=a<b?b:a; k=k>c?c:k;
执行该程序段后,k的值是         
A. 3
B. 2
C. 1
D. 0
30.指出下面不正确的赋值语句是____
A. a++;                B. a= =b;        C.  a+=b;      D.  a=1,b=1;
31.变量的指针,其含义为指该变量的____
A.              B.  地址          C.             D. 一个标志
32.C语言源程序文件的后缀是.c,经过编译和连接后生成的文件后缀是____
A.  .c              B. .obj            C. .exe        D.  .bak
33.以下程序输出结果是____
A. 1                B. 2                C. 3              D.4
Main()
{int w=4,x=3,y=2,z=1;
Printf(%d\n”,(w<x ?w :z<y ?z :x. ) ;}
34.设变量abcdy都已正确定义并赋值。若有以下if语句
if(a<b)
if(c==d )  y=0;
else  y=1;
该语句所表示的含义是         
        0  a<bc=d
A. y=
        1    ab
        0  a<bc=d
B. y=
        1  abcd
        0  a<bc=d
C. y=
        1  a<bcd
        0  a<bc=d
D. y=
        1    cd
35. 当执行以下程序段时,         

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