文档名称 文档密级 1 C语言编程基础考试 [考前说明]本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C语言的标准函数都可用;如果不特别说明, 假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐,X86(80586)CPU处理器(32位小字节序处理器). 一、单选题 1、 给出以下定义: char acX[ ]= "abcdefg"; char acY[ ]= {'a','b','c','d','e','f','g'}; 则正确的叙述为( ) A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同 C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组Y的长度 2、 v oid ex ample(char acHello[]) { printf("%d", sizeof(acHello)); return; } void main() { char acHello[] = "hello"; example(acHello); return; } 的输出是( ) A 4 B 5 C 6 D不确定 3、 以下叙述中不正确的是( ) A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是在栈中保存 C) 在一个函数内定义的变量只在本函数范围内有效 D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数中的成对括号构成的代码) 4、 设有如下定义: unsigned long pulArray[] = {6, 7, 8, 9, 10}; unsigned long *pulPtr; 则下列程序段的输出结果为( ) pulPtr = pulArray; 文档名称 文档密级 2 *(pulPtr + 2) += 2; printf ("%d,%d\n", *pulPtr, *(pulPtr + 2)); A)8,10 B)6,8 C)7,9 D)6,10 5、 有以下程序段 char acArr[]= "ABCDE"; char *pcPtr; for(pcPtr = acArr; pcPtr < acArr + 5; pcPtr++) { printf("%s\n", pcPtr); } return; 输出结果是( ) A) ABCD B) A C) E D) ABCDE B D BCDE C C CDE D B DE E A E 6、 void example( ) { int i; char acNew[20]; for(i = 0; i < 10; i++) { acNew[i] = '0'; } printf("%d\n", strlen(acNew)); return; } 的输出为( D ) A 0 B 10 C 11 D不确定 7、 switch(c)中的c的数据类型可以是char、long、float、unsigned、bool. ( ) A. 正确 B. 错误 8、 全局变量可以定义在被多个.C文件包含着的头文件中。( ) A. 正确 B. 错误 9、 struct stu { int num; char name[10]; 文档名称 文档密级 3 int age; }; void fun(struct stu...