全国计算机等级二级考试C语言试题及答案

  • 格式:doc
  • 大小:53.50 KB
  • 文档页数:8

下载文档原格式

  / 27
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、选择题

在下列各题的A)、B)、C)、D)四个选项中,只有一个选项就是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)程序流程图中带有箭头的线段表示的就是C

A)图元关系B)数据流C)控制流D)调用关系

(2)下面不属于软件设计原则的就是 C

A)抽象B)模块化C)自底向上D)信息隐蔽

(3)下列选项中,不属于模块间耦合的就是 C

A)数据耦合B)标记耦合C)异构耦合D)公共耦合

(4)下列叙述中,不属于软件需求规格说明书的作用的就是D

A)便于用户、开发人员进行理解与交流B)反映出用户问题的结构,可以作为软件开发工作的基础与依据

C)作为确认测试与验收的依据D)便于开发人员进行需求分析

(5)算法的时间复杂度就是指C

A)执行算法程序所需要的时间B)算法程序的长度C)算法执行过程中所需要的基本运算次数

D)算法程序中的指令条数

(6)已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法就是B

A)堆排序B)直接插入排序C)快速排序D)B)与C)

(7)栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能就是B

A)ABCED B)DCBEA C)DBCEA D)CDABE

(8)数据库设计包括两个方面的设计内容,它们就是A

A)概念设计与逻辑设计B)模式设计与内模式设计C)内模式设计与物理设计

D)结构特性设计与行为特性设计

(9)关系表中的每一横行称为一个A

A)元组B)字段C)属性D)码

(10)设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为 C

A)课号,成绩B)学号,成绩C)学号,课号D)学号,姓名,成绩

(11)以下不正确的叙述就是D

A)在C程序中,逗号运算符的优先级最低B)在C程序中,APH与aph就是两个不同的变量

C)若a与b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变

D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值

(12)请选出可用作C语言用户标识符的就是B

A)void,define,WORD B)a3_b3,_123,IF C)FOR,--abc,Case

D)2a,Do,Sizeof

(13)以下选项中,不能作为合法常量的就是B

A)1、234e04 B)1、234e0、4 C)1、234e+4 D)1、234e0

(14)在C语言中,运算对象必须就是整型数的运算符就是A

A)% B)\ C)%与\

D)**

(15)若变量均已正确定义并赋值,以下合法的C语言赋值语句就是A

A)x=y==5; B)x=n%2、5; C)x+n=i; D)x=5=4+1;

(16)有以下程序段

char ch; int k;

ch=′a′;k=12;

printf("%c,%d,",ch,ch,k); printf("k=%d \n",k);

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

A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值

C)a,97,12k=12 D)a,97,k=12

(17)已知字母A的ASCII代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式就是B

A)kk>=′A′&&kk<=′Z′ B)!(kk>=′A′||kk<=′Z′)

C)(kk+32)>=′a′&&(kk+32)<=′Z′ D)isalpha(kk)&&(kk<91)

(18)当变量c的值不为2、4、6时,值也为"真"的表达式就是B

A)(c==2)||(c==4)||(c==6) B)(c>=2&& c<=6)||(c!=3)||(c!=5) C)(c>=2&&c<=6)&&!(c%2)

D)(c>=2&& c<=6)&&(c%2!=1)

(19)若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的就是B

A)(exp==0) B)(exp!=0) C)(exp==1) D)(exp!=1)

(20)以下不正确的定义语句就是B

A)double x[5]={2、0,4、0,6、0,8、0,10、0}; B)int y[5]={0,1,3,5,7,9}; C)char c1[]={′1′,′2′,′3′,′4′,′5′}; D)char c2[]={′\x10′, ′xa′, ′\x8′};

(21)下列程序执行后的输出结果就是B

main()

{ int a[3][3], *p,i;

p=&a[0][0];

for(i=1; i<9; i++)p[i]=i+1;

printf("%d\n",a[1][2];)

A)3 B)6 C)9 D)随机数

(22)设有以下程序段B

int x=0,s=0;

while(!x!=0)s+=++x;

printf("%d",s);

A)运行程序段后输出0 B)运行程序段后输出1 C)程序段中的控制表达式就是非法的D)程序段执行无限次

(23)下面程序段的运行结果就是C

char *s="abcde";

s+=2;printf("%d",s);

A)cde B)字符′c′ C)字符′c′的地址D)无确定的输出结果

(24)阅读下列程序,则执行后的结果为A

#include "stdio、h"

main()

{ int c[][4]={1,2,3,4,5,6,7,34,213,56,62,3,23,12,34,56};

printf("%x,%x\n",c[2][2],*(*(c+1)+1));}

A)3e,6 B)62,5 C)56,5 D)3E,6

(25)下面判断正确的就是C

A)char *a="china";等价于char *a;*a="china"; B)char str[5]={"china"};等价于char str[]={"china"};

C)char *s="china";等价于char *s;s="china"; D)char c[4]="abc",d[4]="abc";等价于char c[4]=d[4]="abc";

(26)若有定义:int a[2][3];,以下选项中对a数组元素正确引用的就是D

A)a[2][!1] B)a[2][3] C)a[0][3] D)a[1>2][!1]

(27)有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句就是D

A)gets(&s[0]); B)scanf("%s",s+1); C)gets(s); D)scanf("%s",s[1]);

(28)有以下程序

(29)#include

#define N 5

#define M N+1

#define f(x) (x*M)

main()