试题类型:选择题60分;判断题10分;程序分析:15分;编程:15分。
一.单项选择题
1.组成C程序的基本单位是________
A)表达式与语句    B)若干文件            C)函数                Dmain函数
2C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符      
A)必须为字母或下划线。        B)必须为下划线。
C)必须为字母              D)可以是字母、数字和下划线中的任一种字符。
3以下用户标识符中,合法的是(  )。
A. int            B. nit            C. 123        D. a+b
4不是C语言提供的合法关键字是( )。
A.switch     B.cher     C.case     D.default
5.以下选项中,合法的C语言关键字是________
Ainteger                    BChar                Cshort              DLong
6.在C语言中,正确的int类型的常数是________
A)-2U                      B059                C3a                  D0xAF
7C语言中int型数据在内存中占两个字节,则unsegned int取值范围是        
A0 ~ 65535                    B0 ~ 32767   
C-32767 ~ 32768                D-32768 ~ 327687     
8.下列变量定义正确的是________
Aint x_1 ; y;      Bint  x=y=5 ;
Cint  for=4;      Dint printf=2,x_y=2;
9以下能正确定义整型变量a, b, c,并为他们赋初值5的语句是
Aint a=b=c=5;                   Bint a,b,c=5
Cint a=5,b=5,c=5;                 Da=b=c=5;
10C 语言中,要求运算对象只能为整数的运算符是(  )。
A. %      B. /      C. >      D. *
11a 为整型变量,不能正确表达数学关系:10<a<15 C 语言表达式是(  )
A. 10<a<15              B. a= =11|| a= =12 || a= =13 || a= =14
C. a>10 && a<15            D. !(a<=10) && !(a>=15)
12.下列表达式没有错误的是________
int x,*p;
A5.0%2                    Bx+1=5            C&p                  D&x+1
13.任何复杂的程序,都是由________构成的。
A)分支结构、顺序结构、过程结构        B)循环结构、分支结构、过程结构
C)顺序结构、循环结构、分支结构        D)循环结构、分支结构
14.在C语言类型说明中,intcharshort等类型的长度是________
A)由用户自己定义的                            B)与机器字长有关的
C)固定的                                              D)任意的
15字符串"ABC"在内存占用的字节数是(  )。
A. 3      B. 4        C. 6      D. 8
16.下列为字符常量的是________
AHE                        B"I"                  C'Z'                  DShe
17、以下说法正确的是( 
A.'x'+101是一个错误的表达式
B.C语言不允许类型的混合运算
C.强制类型转换时,类型说明符必须加括号
D.intx+y 和(int)(x+y)是完全等价的表达式
18.以下有关宏替换的叙述错误的是________
A)宏名必须用大写字母表示                  B)宏替换不占用运行时间
C)宏名不具有类型                                D)宏替换只是字符替换
19.能表示x为偶数的表达式是________
Ax %2==0                Bx%2==1          Cx%2                Dx%2!=0
20C字符串长度0到59语言中运算对象必须是整型的运算符是________
A %              B /                C=                D <=
21.以下说法中正确的是________
A)C程序总是从第一个定义的函数开始执行
B)在C程序中,要调用的函数必须在main函数中定义
C)C程序总是从main函数开始执行的
D)C程序中的main函数必须放在程序的开始部分
22.以下函数原型声明正确的是________
Afloat add(int x, int y) ;                          Bint add(int x;int y) ;
Cchar add( x,y) ;                                  Dint add(char x[ ] [ ]) ;
23.函数形参与实参之间的传递是值传递,以下叙述正确的是________
A)实参和与其对应的形参共用一个存储单元
B)实参和与其对应的形参各占用独立的存储单元
C)当实参和与其对应的形参同名时才共用一个存储单元
D)形参是形式的,不占用存储单元
24.以下叙述错误的是________
A)C语言本身没有输入输出语句
B)一个可执行的C源程序必须包含一个main函数
C)C程序中,注释说明只能位于一条语句的后面
D)C程序的基本组成单位是函数
25.以下说法正确的是________
AC语言源程序无论包含了多少函数,总是从main函数开始执行。
Bmain是由C语言提供的,并不需要用户自己编写。
C)调用C语言标准库函数时,程序中要用到include命令,它也是C语言的一种语句。
D)在C语言中,要调用的函数必须在main函数中定义。
26.以下函数的类型是________
int sum(double x, double y)
{
      double s;
      s=x+y;
      return s;
}
A)字符型                  B)不确定            C)整型              D)实型
27.以下叙述不正确的是________
A)一个C源程序文件必须包含一个main( )函数
B)一个C源程序文件可由一个函数组成
C)一个C源程序文件必须包含一个头文件
D)一个C源程序文件可由多个函数组成
28C语言规定:在一个源程序中,main函数的位置      
A)必须在最后                B)必须在系统调用的库函数的后面。
C)必须在最开始。。            D)可以任意
29.以下叙述正确的是________
A)函数的定义和函数的调用均不可以嵌套
B)函数的定义和函数的调用均可以嵌套
C)函数的定义可以嵌套,但函数的调用均不可以嵌套
D)函数的定义不可以嵌套,但函数的调用均可以嵌套
30.若0<=i<10,则下列________是对数组元素的错误引用。
int a[ ]={1,2,3,4,5,6,7,8,9,0},*p, i;
p=a;
A*(a+ i)                    Ba[p-a]              Cp+ i                D*(&a[i])
31.下列关于#include命令的叙述中,错误的是____________
A#include命令中,文件名可以用双引号或尖括号括起来
B)一个被包含文件中又可以包含另一个被包含文件
C)一个#include命令中可以指定多个被包含文件
D)一个#include命令中只能指定一个被包含文件
32.语句if (!i ) i++;  中的条件表达式 !i 等价于________
Ai==0                      Bi!=1                Ci!=0                D-i
33C语言中规定,if语句的嵌套结构中,else总是与________配对。
A)与最近的if 配套                                B)与第一个if 配套
C)按缩进位置相同的if配套                  D)与最近的且尚未配对的if 配套
34.以下有关switch语句的正确说法是________
Abreak语句是语句中必须的一部分
B)在switch 语句中可以根据需要使用或不使用break语句
Cbreak语句在switch 语句中不可以使用
D)在switch 语句中的每一个case都要用break语句
35.当执行以下程序时,________
#include<stdio.h>
void main()
{
      int a;
      while(a=5)
                printf("%d ",a--);
}
A)循环体将执行5                              B)循环体将执行0
C)循环体将执行无限次                          D)系统会当机。
36设有程序段
int  k = 10 ;
while ( k = 0 )  k = k - 1 ;

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