试题类型:选择题60分;判断题10分;程序分析:15分;编程:15分。
一.单项选择题
1.组成C程序的基本单位是________。
A)表达式与语句 B)若干文件 C)函数 D)main函数
2.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 。
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语言关键字是________。
A)integer B)Char C)short D)Long
6.在C语言中,正确的int类型的常数是________。
A)-2U B)059 C)3a D)0xAF
7.C语言中int型数据在内存中占两个字节,则unsegned int取值范围是 。
A)0 ~ 65535 B)0 ~ 32767
C)-32767 ~ 32768 D)-32768 ~ 327687
8.下列变量定义正确的是________。
A)int x_1 ; y; B)int x=y=5 ;
C)int for=4; D)int printf=2,x_y=2;
9.以下能正确定义整型变量a, b, c,并为他们赋初值5的语句是
A.int a=b=c=5; B.int a,b,c=5;
A.int a=b=c=5; B.int a,b,c=5;
C.int a=5,b=5,c=5; D.a=b=c=5;
10.C 语言中,要求运算对象只能为整数的运算符是( )。
A. % B. / C. > D. *
11.设a 为整型变量,不能正确表达数学关系: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;
A)5.0%2 B)x+1=5 C)&p D)&(x+1)
13.任何复杂的程序,都是由________构成的。
A)分支结构、顺序结构、过程结构 B)循环结构、分支结构、过程结构
C)顺序结构、循环结构、分支结构 D)循环结构、分支结构
14.在C语言类型说明中,int、char、short等类型的长度是________。
A)由用户自己定义的 B)与机器字长有关的
C)固定的 D)任意的
15.字符串"ABC"在内存占用的字节数是( )。
A. 3 B. 4 C. 6 D. 8
16.下列为字符常量的是________。
A)HE B)"I" C)'Z' D)She
17、以下说法正确的是( )
A.'x'+101是一个错误的表达式
B.C语言不允许类型的混合运算
C.强制类型转换时,类型说明符必须加括号
D.(int)x+y 和(int)(x+y)是完全等价的表达式
18.以下有关宏替换的叙述错误的是________。
A)宏名必须用大写字母表示 B)宏替换不占用运行时间
C)宏名不具有类型 D)宏替换只是字符替换
19.能表示x为偶数的表达式是________。
A)x %2==0 B)x%2==1 C)x%2 D)x%2!=0
20.C字符串长度0到59语言中运算对象必须是整型的运算符是________。
A) % B) / C)= D) <=
21.以下说法中正确的是________。
A)C程序总是从第一个定义的函数开始执行
B)在C程序中,要调用的函数必须在main函数中定义
C)C程序总是从main函数开始执行的
D)C程序中的main函数必须放在程序的开始部分
22.以下函数原型声明正确的是________。
A)float add(int x, int y) ; B)int add(int x;int y) ;
C)char add( x,y) ; D)int add(char x[ ] [ ]) ;
23.函数形参与实参之间的传递是“值传递”,以下叙述正确的是________。
A)实参和与其对应的形参共用一个存储单元
B)实参和与其对应的形参各占用独立的存储单元
C)当实参和与其对应的形参同名时才共用一个存储单元
D)形参是形式的,不占用存储单元
24.以下叙述错误的是________。
A)C语言本身没有输入输出语句
B)一个可执行的C源程序必须包含一个main函数
C)C程序中,注释说明只能位于一条语句的后面
D)C程序的基本组成单位是函数
25.以下说法正确的是________。
A)C语言源程序无论包含了多少函数,总是从main函数开始执行。
B)main是由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源程序文件可由多个函数组成
28.C语言规定:在一个源程序中,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) B)a[p-a] C)p+ i D)*(&a[i])
31.下列关于#include命令的叙述中,错误的是____________。
A)#include命令中,文件名可以用双引号或尖括号括起来
B)一个被包含文件中又可以包含另一个被包含文件
C)一个#include命令中可以指定多个被包含文件
D)一个#include命令中只能指定一个被包含文件
32.语句if (!i ) i++; 中的条件表达式 !i 等价于________。
A)i==0 B)i!=1 C)i!=0 D)-i
33.C语言中规定,if语句的嵌套结构中,else总是与________配对。
A)与最近的if 配套 B)与第一个if 配套
C)按缩进位置相同的if配套 D)与最近的且尚未配对的if 配套
34.以下有关switch语句的正确说法是________。
A)break语句是语句中必须的一部分
B)在switch 语句中可以根据需要使用或不使用break语句
C)break语句在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小时内删除。
发表评论