1、1多选题题库C 概述1、多选题.2005-4 不是 C 语言程序的基本单位是_ 。(A) 、 程序行 (B) 、 函数 (C) 、 语句 (D) 、 字符2、多选题.2005-4 以下说法中不正确的是 _。(A) 、 C 语言程序中的 main()函数必须放在程序的开始部分 (B) 、 C 语言程序总是从第一个函数开始执行 (C) 、 在 C 语言程序中,要调用的函数必须在 main()函数中定义 (D) 、 C 语言程序总是从 main()函数开始执行 3、多选题.2005-12 以下说法中不正确的是 _。(A) 、 C+语言程序总是从第一个函数开始执行 (B) 、 C+语言程序总是从 ma
2、in()函数开始执行 (C) 、 C+语言程序中的 main()函数必须放在程序的开始部分 (D) 、 在 C+语言程序中,要调用的函数必须在 main()函数中定义数据类型1、多选题.2004 年.2005-4.2005-12在 C 语言提供的不合法关键字是( )(A) 、 Case (B) 、 swicth (C) 、 cher (D) 、 default 2、多选题.2004 年请选出不可用作 C 语言用户标识符的选项( )(A) 、 a3_b3 _123 IF (B) 、 For -abc Case (C) 、 void define WORD (D) 、 2a DO sizeof 3
3、、多选题.2004 年语言提供的非法的数据类型关键字是( )(A) 、 short (B) 、 Char (C) 、 Double (D) 、 integer 4、多选题.2005-4 以下为不合法的十六进制数是 _。(A) 、 0x2A (B) 、 0x11Au (C) 、 0X0 (D) 、 3A 5、多选题.2005-4 在 C 语言中,不合法的长整型常数是 _。(A) 、 2.1869e10 (B) 、 0L 2(C) 、 4962710 (D) 、 0.054838743 6、多选题.2005-12 在 C+语言中,不合法的字符常量是_。(A) 、 x43 (B) 、 ab (C)
4、、 084 (D) 、 “0“7、多选题.2004 年.2005-12下列正确的转义字符是( )(A) 、 (B) 、 0 (C) 、 (D) 、 0748、多选题.2005-12 下列运算符中,优先级相同的是 _。(A) 、 (B) 、 % (C) 、 / (D) 、 9、多选题.2004 年若变量已正确定义并赋值,下面不符合 C 语言语法的表达式是( )(A) 、 a:=b+1 (B) 、 a=b=c+2 (C) 、 int 18.5%3 (D) 、 a=a+7=c+b 10、多选题.2007-1-6下面的表达式中值为 0 的是_。 (A) 、 3/5 (B) 、 53 (C) 、 ! 3
5、 (D) 、 5%3 11、多选题.2007-1-6已知 x,y,z 是整型变量,则下列选项中正确的是_。 (A) 、 if (x 顺序程序设计1、多选题.2004 年在下列选项中,正确的赋值语句是( )(A) 、 k=i=j; (B) 、 a=b+c=1; (C) 、 n1=(n2=(n3=0); (D) 、 +t; 2、多选题.2004 年下列语句中不符合 C 语言语法的赋值语句是( )(A) 、 a=7+b+c=a+7; (B) 、 a=7+b+=a+7; (C) 、 a=7+b,c=a+7; 3(D) 、 a=7+b,b+,a+7 3、多选题.2004 年.2005-4 请选出不合法的
6、 C 语言赋值语句( )(A) 、 i+; (B) 、 a=58,b=58 (C) 、 k=int(a+b); (D) 、 a=b=58 4、多选题.2005-12 请选出不合法的 C+语言赋值语句_。(A) 、 i+; (B) 、 a=a mod b (C) 、 a=/b; (D) 、 k=int(a+b); 5、 多选题 2007-1-6以下程序段执行后,a 的值为 1 的是_。 (A) 、 int a=0,b=1,c; b=c;b=a;c=a; (B) 、 int a=0,b=1; a=a+b;b=a-b;a=a-b; (C) 、 int a=0,b=1,c; c=a;a=b;b=c;
7、(D) 、 int a=0,b=1,c; c=a;b=a;b=c; 循环控制1、多选题C+ 语言中,下面的描述不正确的是_。(A) 、 do-while 语句构成的循环,当 while 语句中的表达式值为非零时结束循环 (B) 、 do-while 语句构成的循环必须用 break 语句才能退出 (C) 、 不能使用 do-while 语句构成的循环 (D) 、 do-while 语句构成的循环,当 while 语句中的表达式值为零时结束循环 数组1、多选题.2005-4.2005-12以下不能对数组 a 进行正确初始化的语句是_。(A) 、 int a=; (B) 、 int a3=1, 2
8、; (C) 、 int a3=0,1,2,3; (D) 、 int a=1; 2、多选题.2004 年.2005-12不合法的数组定义是( )(A) 、 char a=0,1,2,3,4,5; (B) 、 int a=“string“; (C) 、 int a5=0,1,2,3,4,5; (D) 、 vhst s=“string“; 3、多选题.2005-4.2005-12下列关于数组初始化的说法正确的是_。(A) 、 若对数组 a 定义:“static int x10;“,则数组元素值均为 0 (B) 、 “int x10=1,2,3,4,5,6,7,8,9;“表示 x9元素值为 9 (C)
9、 、 对于“int x10;“它的元素初值是不确定的 (D) 、 “int x10=1,2,3,4,5;“是不合法的,因为数组长度为 10,而初始值仅有 5 个4、多选题.2005-4 能把字符串 :“Hello!“赋给数组 b 的语句是 _。(A) 、 char b10;strcpy(b,“Hello!“); 4(B) 、 char b10=H,e,l,l,o,!; (C) 、 char b10=“Hello!“; (D) 、 char b10;b=“Hello!“; 5、多选题.2004 年.2005-4 下述对 C 语言字符数组的描术正确的是( )(A) 、 不可以用关系运算符对字符数组
10、中的字符串进行比较 (B) 、 字符数组可以存放字符串 (C) 、 字符数组中的字符串可以整体输入、输出 (D) 、 可以在赋值语句中通过赋值运算符 “=“对字符数组整体赋值6、多选题.2007-1-6若有以下的定义:“int x23;“,能正确表示 x 数组元素地址的表达式是_。(A) 、 (B) 、 int x1+23; (C) 、 int x(3,4) (D) 、 int x 4; 8、多选题.2007-1-6若有说明“int x=3, y33;“,则对 y 数组元素的非法引用是_。 (A) 、 y0x (B) 、 yx2 (C) 、 y21+1 (D) 、 y13-x 函数1、多选题.
11、2004 年.2005-12以下叙述中正确的是( )(A) 、 在一个函数内定义的变量只在本函数范围内有效 (B) 、 在一个函数内的复合语句中定义的变量在本函数范围内有效 (C) 、 在不同的函数中可以使用相同名字的变量 (D) 、 函数中的形式参数是局部变量 2、多选题.2005-12 以下叙述中不正确的是 _。(A) 、 函数中的形式参数是局部变量 (B) 、 在一个函数内的复合语句中定义的变量在本函数范围内有效 (C) 、 在一个函数内定义的变量只在本函数范围内有效 (D) 、 函数的形式参数不可以说明为 register 变量 指针1、多选题.2005-4 若 x 是整型变量, pb
12、 是基类型为整型的指针变量,则不正确的赋值表达式是_。(A) 、 *pb= (B) 、 pb= (D) 、 *pb=*x 2、多选题.2004 年.2005-4 下面各语句行中,不能正确进行赋字符串操作的语句行是( )(A) 、 char *s; scanf(“%s“,s); (B) 、 char st45=“ABCDE“; (C) 、 char s5=A,B,C,D,E; (D) 、 char *s; s=“ABCDE“; 3、多选题.2005-12 下列_ 函数能实现字符串的复制。(A) 、 void f(char *s,char *t) do *s+=*t+; while(*t!=0);
13、 (B) 、 void f(char *s,char *t) while(*t) *s+=*t+; *s=0; (C) 、 void f(char *s,char *t) do *s=*t; s+; while(*t+); (D) 、 void f(char *s,char *t) unsigned i; for (i=0;inum=10 (C) 、 p.num (D) 、 x.num=52、多选题.2005-12 有关 sizeof(double)不正确的描述是_ 。(A) 、 一种函数调用 (B) 、 一个双精度型表达式 (C) 、 一个整型表达式 (D) 、 一个不合法的表达式3、多选题
14、.2004 年.2005-12在一个单链表结构中,指针 p 指向链表的倒数第二个结点,指针 s 指向新结点,则能将 s 所指的结点插入到链表末尾的语句组是( )(A) 、 p=p-next; s-next=p; p-next=s (B) 、 p=(*p).next; (*s).next=(*p).next; (*p).next=s 7(C) 、 s-next=NULL; p=p-next; p-next=s (D) 、 p=p-next; s-next=p-next; p-next=s文件1、多选题.2005-12 如果打开文件时,选用的文件操作方式为“wb+” ,则下列说法中正确的是_。(A
15、) 、要打开的文件是二进制文件 (B) 、要打开的文件必须存在 (C) 、要打开的文件可以不存在 (D) 、打开文件后可以读取数据 2、多选题.2005-4.2005-12下面有关 Rewind()函数作用的描述中,不正确的是 _。(A) 、 使文件位置指针重新回到文件的末尾 (B) 、 重新打开文件 (C) 、 使文件位置指针重新回到文件的开始 (D) 、 返回文件长度值C+基础知识1、 多选题.2005-12 下列_ 是 C+的函数声明。(A) 、 float result( ); (B) 、 float result(float, float); (C) 、 float result(f
16、loat x, float y) (D) 、 float result(x, y);2、 多选题.2005-12 如果类 A 继承了类 B,则类 A 称为_。(A) 、 派生类 (B) 、 继承类 (C) 、 子类 (D) 、 父类3、 多选题.2005-12 当用 public 继承从基类派生一个类时,基类的_成员可被派生类中的成员函数访问。(A) 、 protected (B) 、 public (C) 、 private (D) 、 friend4、 多选题.2005-12 下列函数中,可以作为虚函数的是 _。(A) 、 析构函数 (B) 、 成员函数 (C) 、 普通函数 (D) 、
17、构造函数5、 多选题.2007-1 关于派生类的说法不正确的是 _。 (A) 、 派生类可显现基类的任何函数成员 (B) 、 派生类可重载已有的函数成员 (C) 、 派生类可以拥有自己的新成员 (D) 、 派生类无法给基类的数据成员初始化8多 选 题 答 案 C概 述 1 2 ACD A B C ACD 数 据 类 型 1 2 3 4 5 6 7 8 9 10 A B C BC D B C D B C D A C D B C D B C D B C A C D ABC 11 ABD 顺 序 程 序 设 计 1 2 3 4 5 A C D A BD B D BC BC 循 环 控 制 1 A B C 数 组 1 2 3 4 5 6 7 8 A C B C D A C A B C A B C B D ACD AB 函 数 1 2 A C D B D 指 针 1 2 3 4 5 6 7 8 9 10 A C D B C B C A B C A B A B C A B C A B D B D ABC 11 AC 链 表 1 2 3 A B D A B D B C D 文 件 1 2 A C D A B D C+基 础 知 识 1 2 3 4 5 A B C AB D A B C A BD