77范文网 - 专业文章范例文档资料分享平台

C语言编程基础考试试题

来源:网络收集 时间:2019-03-22 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

文档名称 文档密级

C语言编程基础考试

[考前说明]本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C语言的标准函数都可用;如果不特别说明,

假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐,X86(80586)CPU处理器(32位小字节序处理器). 一、单选题

1、 给出以下定义:

char acX[ ]= \

char acY[ ]= {'a','b','c','d','e','f','g'};

则正确的叙述为( )

A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同 C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组Y的长度

2、 void example(char acHello[])

{

printf(\ return; }

void main()

{

char acHello[] = \ 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;

1

文档名称 文档密级

*(pulPtr + 2) += 2;

printf (\

A)8,10 B)6,8 C)7,9 D)6,10

5、 有以下程序段

char acArr[]= \ char *pcPtr;

for(pcPtr = acArr; pcPtr < acArr + 5; pcPtr++) {

printf(\ }

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(\ 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];

2

文档名称 文档密级

int age; };

void fun(struct stu *p) {

printf(\ return; }

void main() {

struct stu students[3]={ {9801,\ {9802,\ {9803,\ fun(students + 2); return; }

输出结果是( )

A) Zhang B)Zhao C) Wang D) 18

10、 以下程序运行后,输出结果是( )

void main( )

{

char *szStr = \ szStr += 2;

printf(\ return; }

A cde B 字符c的ASCLL码值 C \这个常串中字符c所在的地址 D 出错

11、 在X86下,有下列程序

#include void main() {

union {

int k; char i[2]; }*s,a; s = &a;

s->i[0] = 0x39; s->i[1] = 0x38;

printf(\ }

3

文档名称 文档密级

输出结果是( )

A) 3839 B) 3938 C) 380039 D) 不可预知

12、 网络上传输的字节序默认是大字节的,如果主机是小字节序,在网络通信时则须进行字节序转换;如果主机是大字节序,为了程序的一致性及可移植性,最好也在程序中加上字节序转换的操作(空操作)。( ) A. 正确 B.错误

13、 void example()

{

int i;

char acNew[20] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};

for(i = 0; i < 10; i++)

{

acNew[i] = '0';

}

printf(\ return; }

的输出为:( )

A 0 B 10 C 11 D不确定

14、 在函数内部定义的变量(静态变量、寄存器变量等特殊变量除外)的内存是在栈内存中,所以在定义函数内部的变量的时候,一定要保证栈不能够溢出。如果临时变量 占用空间较大,应该使用内存申请的方式,这样该变量指向的内存就是在堆内存中了。( ) A. 正确 B. 错误

15、 局部变量可以和全局变量重名,编译的时候不会出现错误,但一旦不小心,

就可能导致使用错误变量,所以在定时局部变量的时候,不要和全局变量重名。( )

A. 正确 B. 错误

16、 设有以下宏定义: #define N 3

#define Y(n) ((N+1)*n) /*这种定义在编程规范中是严格禁止的*/ 则执行语句:z = 2 * (N + Y(5 + 1));后,z的值为( ) A) 出错 B) 42 C) 48 D)54

17、 int *(*ptr)();

则以下叙述中正确的是( ) A) ptr是指向一维组数的指针变量

4

文档名称 文档密级

B) ptr是指向int型数据的指针变量

C) ptr是指向函数的指针,该函数返回一个int型数据

D) ptr是指向函数的指针,该函数的返回值是指向int型数据的指针

18、 0x12345678 在采用BigEndian中内存的排列顺序是______,在采用LittleEndian内存中的排列顺序是______. (答案从左到右内存地址依次增加)

A.12 34 56 78 B.34 12 78 56 C.78 56 34 12 D.56 78 12 34

19、 请指出下面程序问题

#define MAX_LEN 254

unsigned char Array[MAX_LEN]; int main(int argc, char *argv[]) {

int i;

for ( i = 0; i <= MAX_LEN; i++ ) {

Array[i] = i; }

return; }

程序的错误为():

A、i = MAX_LEN时,数组越界 B、argv参数形式错误

C、i = MAX_LEN时,赋值溢出 D、return无返回值

20、 #define BUFFER_SIZE 256

void GetMemory(char **ppszBuf) {

if (NULL == ppszBuf) {

ASSERT(0); return ; }

*ppszBuf = (char *)malloc(BUFFER_SIZE); return; }

void Test(void)

{

char *pszBuf=NULL; GetMemory(&pszBuf);

5

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言编程基础考试试题在线全文阅读。

C语言编程基础考试试题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/540399.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: