全国计算机二级C语言模拟549Word文档下载推荐.docx

上传人:b****1 文档编号:13401350 上传时间:2022-10-10 格式:DOCX 页数:17 大小:45.60KB
下载 相关 举报
全国计算机二级C语言模拟549Word文档下载推荐.docx_第1页
第1页 / 共17页
全国计算机二级C语言模拟549Word文档下载推荐.docx_第2页
第2页 / 共17页
全国计算机二级C语言模拟549Word文档下载推荐.docx_第3页
第3页 / 共17页
全国计算机二级C语言模拟549Word文档下载推荐.docx_第4页
第4页 / 共17页
全国计算机二级C语言模拟549Word文档下载推荐.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

全国计算机二级C语言模拟549Word文档下载推荐.docx

《全国计算机二级C语言模拟549Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《全国计算机二级C语言模拟549Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。

全国计算机二级C语言模拟549Word文档下载推荐.docx

a+7=c+b和a=a+7,其中第一个是错的,因为C语言规定赋值号的左边只能是单个变量,不能是表达式或常量等。

因此,正确答案是选项B),它实际上相当于a=(b=c+2),进而可分解为两个表达式:

b=c+2和a=b。

3.若有以下定义;

chara;

intb;

floatc;

doubled;

则表达式“a*b+d-c”值的类型为

A.float

B.int

C.char

D.double

D

4.设有定义语句

intx[6]={2,4,6,8.5,7),*p=x,i;

要求依次输出x数组6个元素中的值,不能完成此操作的语句是______。

A.for(i=0;

i<6;

i++)printf("

%2d"

*(p++));

B.for(i=0;

i++)prinff("

*(p+i));

C.for(i=0;

*p++);

D.for(i=0;

(*p)++);

[解答]选项A、B、C显然都能够正确输出数组x中的元素,但是在D选项中,该程序一共输出了六次数组x中的第一个元素自加1的值,因此是错误的。

5.以下不合法的数值常量是______。

A.011

B.le1

C.8.0E0.5

D.0xabcd

C

评析:

数值常量区分为不同的类型,如12、0、-3为整型常量,4.6、-123为实型常量,'

a'

'

A'

为字符常量。

实数常量有两种表示形式:

十进制小数形式和指数形式。

用指数形式表示必须注意字母e(或E)之前必须有数字,且e(或E)后面的指数必须为整数。

如:

e3、7e3.5、8.0E0.5都是不合法的。

6.有以下程序

main()

{intx,y,z;

x=y=1;

z=x++,y++,++y;

printf("

%d,%d,%d\n"

x,y,z);

}

程序运行后的输出结果是______。

A.2,3,3

B.2,3,2

C.2,3,1

D.2,2,1

x++:

表示在使用x之后,使x的值加1;

y++:

表示在使用y之后,使y的值加1;

++y:

表示在使用y之前,使y的值加1。

此题中执行z=x++,是将x的值先赋给z,所以z=1,接下来x自行加1,其结果为2:

执行y++后,y=2,执行++后,y=3;

故答案选C。

7.以理对枚举类型名的定义中正确的是______。

A.enuma={one,two,three);

B.enuma{one=9,two=1three};

C.enuma={"

one"

"

two"

three"

};

D.enuma{"

."

[解答]声明枚举类型用enum开头。

例如:

enumweekday(sun,mon,tue,wed,thu,fri,sat);

说明:

1、在C编译中,对枚举元素按常量处理,同时可以改变他们的值。

2、枚举值可以用来做判断比较。

3、一个整数不能直接赋给一个枚举变量。

8.有以下程序段

charch;

intk

ch='

k=12;

%c,%d,"

,ch,ch,k);

k=%d\n"

,k);

已知字符a的ASCII码值为97,则执行上述程序段后输出结果是

A.因变量类型与格式描述符的类型不匹配输出无定值

B.输出项与格式描述符个数不符,输出为零值或不定值

C.a,97,12k=12

D.a,97,k=12

[解答]输出格式控制符%c表示将变量以字符的形式输出;

输出格式控制符%d表示将变量以带符号的十进制整型数输出,所以第一个输出语句输出的结果为a,97;

第二个输出语句输出的结果为k=12。

9.有以下程序

{inti,j,x=0;

for(i=0;

i<2;

i++)

{x++;

for(j=0;

j<=3;

j++)

{if(j%2)continue;

x++;

x=%d\n"

,x);

程序执行后的输出结果是

A.x=4

B.x=8

C.x=6

D.x=12

[解答]此程序考查了for循环和x++。

对于大循环,有两个x++,其中循环3次,对于小循环,循环三次,但是运行了两次x++,所以最后结果是6+2=8。

10.有以下程序

main()

{inti=1,j=2,k=3;

if(i++==1&&(++j==3||k++==3))

printf("

%d%d%d\n"

i,j,k);

}

程序运行后的输出结果是______。

A.123

B.234

C.223

D.233

11.以下程序的输出结果是______。

{inti,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&

x[1][1];

for(i=0;

i<4;

i+=2)

%d"

p[i]);

A.52

B.51

C.53

D.97

[解答]首先使指针p指向x[1][1],即5,然后通过循环输出p[0]和p[2]。

12.若有定义floata=25,b,*p=&

b;

,则下列对赋值语句*p=a;

和p=&

a;

的正确解释为。

A.两个语句都是将变量a的值赋予变量p

B.*p=a是使p指向变量a,而p=&

a是将变量a的值赋予变量指针p

C.*p=a是将变量a的值赋予变量b,而p=&

a是使p指向变量a

D.两个语句都是使p指向变量a

[解答]“p”是指针变量,指向一个地址;

“*p”为p指针所指向地址的内容。

13.下列程序执行后的输出结果是______。

{chararr[2][4];

strcpy(arr,"

she"

);

strcpy(arr[1],"

he"

arr[0][3]='

&

'

%s\n"

,arr);

A.she&

he

B.he

C.she

D.shehe

A

14.有以下程序:

#include<string.h>

structSTU

(charname[10];

intnum;

};

voidf(char*name,intnum)

{structSTUs[2]={{"

SunDan"

20044}.{"

Penghua"

20045}};

num=s[0].num;

strcpy(name,s[0].name);

YangSall"

20041},{"

LiSiGao"

20042}},*p;

p=&

s[1];

f(p->name,p->num);

%s%d\n"

p->name,p->num);

程序运行后的输出结果是______。

A.SunDan20042

B.SunDan20044

C.LiSiGuo20042

D.YangSan20041

[解答]本题主函数中定义了结构体类型的指针变量p,并使其指向了结构体类型的数组s[1],并通过调用函数f改变了指针变量p所指向的结构体中成员变量name的值,但并未改变其num的值。

这是因为函数f中的形参name是一个字符型指针变量,它指向了主函数中指针变量p所指向的结构体的成员变量name,所以对函数f中的形参*name的改变也就是刘主函数中p->name的改变,而函数f中对形参num的改变并不会影响主函数中p->num的值,因为此时传递给num的是一个值,而不是地址。

15.一个C程序可以包含任意多个不同名的函数,但有且仅有一个______。

A.过程

B.函数

C.主函数

D.子程序

[解答]主函数main在C语言程序中有且只能有一个,它是程序执行的入口。

16.下列选项中不属于C语言的数据类型是()。

A.复数型

B.逻辑型

C.双精度型

D.集合型

[解答]在C语言中,数据类型可分为基本数据类型、构造数据类型、指针类型、空类型4大类,其中基本类型;

字符型、整型、实型(单精度型和双精度型)、枚举类型。

构造类型:

数组、结构体、公用体。

选项B中的逻辑型和C中双精度类型都属于基本数据类型,选项D集合类型属于构造类型;

而选项A复数型不是C语言的数据类型。

17.面向对象的设计方法与传统的面向过程的方法有本质不同,它的基本原理是。

A.模拟现实世界中不同事物之间的联系

B.强调模拟现实世界中的算法而不强调概念

C.使用现实世界的概念抽象地思考问题从而自然地解决问题

D.不强调模拟现实世界中的算法而强调概念

[解答]面向对象的设计方法的基本原理是:

使用现实世界的概念抽象地思考问题从而自然地解决问题。

它虽强调模拟现实世界中的概念而不强调算法,但它鼓励开发者在软件开发的绝大部分中都应该用领域的概念去思考。

18.有下列二叉树,对此二叉树前序遍历的结果为。

A.ACBEDGFH

B.ABDGCEHF

C.HGFEDCBA

D.ABCDEFGH

[解答]对二叉树的前序遍历是指先访问根结点,然后访问左子树,最后访问右子树,并且,在访问左、右子树时,先访问根结点,再依次访问其左、右子树。

19.以下能正确定义二维数组的是______。

A.inta[][3];

B.inta[][3]={2*3};

C.inta[][3]={};

D.inta[2][3]={{1),{2},{3,4});

[解答]本题中,A、B、C选项犯了同样的错误,没有对数组a的第一个下标进行初始化,不能正确地申请空间,因此是错误的,而在D选项中,数组的存放形式是:

{{1,0,0),{2,0,0},{

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1