基本信息
文件名称:c 2007计算机2级试题及答案.doc
文件大小:27.3 KB
总页数:10 页
更新时间:2025-05-20
总字数:约3.79千字
文档摘要

c2007计算机2级试题及答案

一、单项选择题(每题2分,共10题)

1.在C语言中,合法的字符常量是()

A.\084B.\x43C.abD.\0

答案:B

2.若有定义:inta=5,p=a;,则printf(%d,p);的输出结果为()

A.地址B.5C.无确定值D.编译错误

答案:B

3.以下关于数组的描述正确的是()

A.数组的大小是固定的,但可以有不同类型的元素

B.数组元素的下标从1开始

C.数组名是一个常量指针

D.可以用赋值语句整体对数组赋值

答案:C

4.以下函数的功能是()

```c

voidfun(chars)

{

chart=s;

while(t!=\0)

t++;

t--;

while(st)

{

charc=s;

s=t;

t=c;

s++;

t--;

}

}

```

A.将字符串s中的字符逆序存放

B.求字符串s的长度

C.比较字符串s的首尾字符

D.将字符串s首尾字符交换

答案:A

5.若有定义:structstudent{

charname[20];

intage;

floatscore;

};

structstudentst={Tom,20,85.5};

则访问st成员age的正确方式是()

A.st-ageB.st.ageC.student.ageD.(st).age

答案:B

6.在C语言中,文件由()组成。

A.记录B.数据行C.数据块D.字符(字节)

答案:D

7.以下关于宏定义的说法错误的是()

A.宏定义只是简单的字符串替换

B.宏名一般用大写字母表示

C.宏定义可以嵌套定义

D.宏定义不需要分号结尾

答案:C

8.若有inti=10;,则执行下列语句后的输出结果为()

```c

switch(i)

{

case9:printf(nine);break;

case10:printf(ten);

case11:printf(eleven);break;

default:printf(error);

}

```

A.tenB.tenelevenC.errorD.nine

答案:B

9.设p1和p2是指向同一个int型数组的指针变量,k为int型变量,则不能正确执行的语句是()

A.k=p1+p2;B.p2=k;C.p1=p2;D.k=p1(p2);

答案:B

10.以下能正确定义二维数组的是()

A.inta[][3];B.inta[2][];C.inta[][];D.inta[2][3]={{1,2},{3,4,5}};

答案:D

二、多项选择题(每题2分,共10题)

1.以下关于C语言中变量的说法正确的有()

A.变量必须先定义后使用

B.变量的类型决定了变量的存储大小和取值范围

C.全局变量在整个程序的运行期间都占用内存

D.局部变量的作用域仅限于定义它的函数内部

答案:ABCD

2.下列关于函数的叙述正确的是()

A.函数可以没有返回值

B.函数可以嵌套定义

C.函数的形参在函数调用时才分配内存空间

D.函数可以有多个返回值

答案:AC

3.在C语言中,以下数据类型中属于构造类型的有()

A.数组B.结构体C.共用体D.枚举

答案:ABC

4.以下关于指针的说法正确的有()

A.指针变量可以存储变量的地址

B.指针变量可以进行算术运算

C.空指针的值为NULL

D.可以通过指针间接访问变量的值

答案:ABCD

5.对于以下代码:

```c

includestdio.h

intmain()

{

inti=0;

do

{

printf(%d,i);

i++;

}while(i3);

return0;

}

```

正确的说法有()

A.这是一个do-while循环

B.循环体至少执行一次

C.输出结果为012

D.可以用while循环等价替换

答案:ABC

6.以下关于C语言文件操作的说法正确的有()

A.可