首页 - 网校 - 题库 - 直播 - 雄鹰 - 团购 - 书城 - 模考 - 学习通 - 导航 - 510 -
首页考试吧网校题库直播雄鹰510团购书城模考论坛实用文档作文大全宝宝起名
2015中考
法律硕士
2015高考
MBA考试
2015考研
MPA考试
在职研
中科院
考研培训
专升本
自学考试 成人高考
四 六 级
GRE考试
攻硕英语
零起点日语
职称英语
口译笔译
申硕英语
零起点韩语
商务英语
日语等级
GMAT考试
公共英语
职称日语
新概念英语
专四专八
博思考试
零起点英语
托福考试
托业考试
零起点法语
雅思考试
成人英语三级
零起点德语
等级考试
华为认证
水平考试
Java认证
职称计算机 微软认证 思科认证 Oracle认证 Linux认证
公 务 员
导游考试
物 流 师
出版资格
单 证 员
报 关 员
外 销 员
价格鉴证
网络编辑
驾 驶 员
报检员
法律顾问
管理咨询
企业培训
社会工作者
银行从业
教师资格
营养师
保险从业
普 通 话
证券从业
跟 单 员
秘书资格
电子商务
期货考试
国际商务
心理咨询
营 销 师
司法考试
国际货运代理人
人力资源管理师
广告师职业水平
卫生资格 执业医师 执业药师 执业护士
会计从业资格
基金从业资格
统计从业资格
经济师
精算师
统计师
会计职称
法律顾问
ACCA考试
注册会计师
资产评估师
高级经济师
审计师考试
高级会计师
注册税务师
国际内审师
理财规划师
美国注册会计师
一级建造师
安全工程师
设备监理师
公路监理师
公路造价师
二级建造师
招标师考试
物业管理师
电气工程师
建筑师考试
造价工程师
注册测绘师
质量工程师
岩土工程师
注册给排水
造价员考试
注册计量师
环保工程师
化工工程师
暖通工程师
咨询工程师
结构工程师
城市规划师
材料员考试
消防工程师
监理工程师
房地产估价
土地估价师
安全评价师
房地产经纪人
投资项目管理师
环境影响评价师
土地登记代理人
宝宝起名
缤纷校园
实用文档
入党申请
英语学习
思想汇报
作文大全
工作总结
求职招聘 论文下载 直播课堂
您现在的位置: 考试吧 > 计算机等级考试 > 计算机二级考试 > C语言 > 模拟试题 > 正文

2015年计算机二级C语言测试题及答案解析(1)

来源:考试吧 2014-11-20 14:50:50 考试吧:中国教育培训第一门户 模拟考场
考试吧整理了“2015年计算机二级C语言测试题及答案解析”,提供给各位考生备考,更多考试资料请持续关注考试吧计算机等级考试频道!

  21.若有以下数组说明,则i=10;a[a[i]]元素数值是(C )。

  int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};

  A、10

  B、9

  C、6

  D、5

  先算a[a[i]]内层的a[i],由于i=10,因此a[i]即a[10].

  a[10]对应下面数组中的元素为9. 因此a[a[i]]即为a[9]

  a[9]对应下面数组中的元素为6. 因此a[9]即为6

  22.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( B )

  A、2

  B、3

  C、4

  D、无确定值

  5 7

  D、3 6 9

  二维数组的一维大小,即指二维数组的行数,在本题中,按行对二维数组赋值,因此内层有几个大括号,数组就有几行

  23.对二维数组的正确定义是(C )

  详见教材P149~152,二维数组的定义、初始化

  类型符 数组名 [常量表达式][常量表达式]

  二维数组可以看做是矩阵

  类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;第一个常量表达式是指数组的行数;第二个常量表达式是指数组的列数;常量表达式的值只能是整数,不可以是变量,而且从1开始计数。

  一维数组初始化时可以省略数组长度

  二维数组初始化时可以省略行数,但不能省略列数

  选项A,B,都省略了列数

  选项D,不符合二维数组定义的一般形式,行、列常量表达式应该放在不同的[]中

  A、int a[ ][ ]={1,2,3,4,5,6};

  B、int a[2] []={1,2,3,4,5,6};

  C、int a[ ] [3]={1,2,3,4,5,6};

  D、int a[2,3]={1,2,3,4,5,6};

  24.已知int a[3][4];则对数组元素引用正确的是__C___

  A、a[2][4]

  B、a[1,3]

  C、a[2][0]

  D、a(2)(1)

  详见教材P150,数组元素的引用

  数组名[下标] [下标]

  引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数

  第一个[下标]表示行逻辑地址下标,第二个[下标]表示列逻辑地址下标。

  本题图示详见P149图6.7

  因此a的行逻辑地址范围0~2;a的列逻辑地址范围0~3;

  选项A,列逻辑地址下标超过范围

  选项B,D,的引用形式不正确。

  25.C语言中函数返回值的类型是由 A 决定的.

  A、函数定义时指定的类型

  B、 return语句中的表达式类型

  C、 调用该函数时的实参的数据类型

  D、形参的数据类型

  26. 在C语言中,函数的数据类型是指(A )

  A、 函数返回值的数据类型

  B、 函数形参的数据类型

  C、 调用该函数时的实参的数据类型

  D、任意指定的数据类型

  27.在函数调用时,以下说法正确的是( B )

  A、函数调用后必须带回返回值

  B、实际参数和形式参数可以同名

  C、函数间的数据传递不可以使用全局变量

  D、主调函数和被调函数总是在同一个文件里

  28. 在C语言中,表示静态存储类别的关键字是: ( C )

  A、 auto

  B、 register

  C、static

  D、extern

  29.未指定存储类别的变量,其隐含的存储类别为(A )。

  A、auto

  B、static

  C、extern

  D、register

  30. 若有以下说明语句:

  struct student

  { int num;

  char name[ ];

  float score;

  }stu;

  则下面的叙述不正确的是: (D )

  A、 struct是结构体类型的关键字

  B、 struct student 是用户定义的结构体类型

  C、 num, score都是结构体成员名

  D、 stu是用户定义的结构体类型名

  31.若有以下说明语句:

  struct date

  { int year;

  int month;

  int day;

  }brithday;

  则下面的叙述不正确的是__C___.

  A、 struct是声明结构体类型时用的关键字

  B、 struct date 是用户定义的结构体类型名

  C、 brithday是用户定义的结构体类型名

  D、year,day 都是结构体成员名

  32. 以下对结构变量stul中成员age的非法引用是 B

  struct student

  { int age;

  int num;

  }stu1,*p;

  p=&stu1;

  A、 stu1.age

  B、 student.age

  C、 p->age

  D、(*p).age

  33.设有如下定义:

  struck sk

  { int a;

  float b;

  }data;

  int *p;

  若要使P指向data中的a域,正确的赋值语句是 C

  A、 p=&a;

  B、 p=datA、a;

  C、p=&datA、a;

  D、*p=datA、a;

  34.设有以下说明语句:

  typedef struct stu

  { int a;

  float b;

  } stutype;

  则下面叙述中错误的是( D )。

  A、struct是结构类型的关键字

  B、struct stu是用户定义的结构类型

  C、a和b都是结构成员名

  D、stutype是用户定义的结构体变量名

  35.语句int *p;说明了 C 。

  A、p是指向一维数组的指针

  B、p是指向函数的指针,该函数返回一int型数据

  C、p是指向int型数据的指针 // 指针的定义教材P223

  D、p是函数名,该函数返回一指向int型数据的指针

  36.下列不正确的定义是( A )。

  A、int *p=&i,i;

  B、int *p,i;

  C.int i,*p=&i;

  D、int i,*p;

  选项A先定义一个整型指针变量p,然后将变量i的地址赋给p。然而此时还未定义变量i因此编译器无法获得变量i的地址。(A与C对比,选项C先定义变量i,则在内存中为i分配空间,因此i在内存空间的地址就可以确定了;然后再定义p,此时可以为p赋i的地址,C正确)

  37. 若有说明:int n=2,*p=&n,*q=p,则以下非法的赋值语句是: ( D )

  A、p=q

  B、*p=*q

  C、n=*q

  D、p=n

  p,q同为整型指针变量,二者里面仅能存放整型变量的地址。

  选项A,q中为地址,因此可将此地址赋给p

  选项B,*p表示p所指向对象n的内容,即一个整数;*q表示q所指向对象的内容,由于在定义q时为其初始化,将p中n的地址给q,因此p中存放n的地址,*q表示q所指向对象n的内容.因此*p=*q 相当于 n=n;

  选项C,n=*q 等价于n=n;

  选项D,p中只能存放地址,不能将n中的整数值赋给p

  38.有语句:int a[10],;则 B 是对指针变量p的正确定义和初始化。

  A、int p=*a;

  B、int *p=a;

  C、int p=&a;

  D、int *p=&a;

  选项A,a是数组名,不是指针变量名,因此不可用*标注数组名a

  选项C,a是数组名,数组名就是地址,无需再用地址符号。而且在定义指针变量p时,应在变量名前加*,标明p是指针变量

  选项D,a是数组名,数组名就是地址,无需再用地址符号。

  39.若有说明语句“int a[5],*p=a;”,则对数组元素的正确引用是( C )。

  A、a[p]

  B、p[a]

  C、*(p+2)

  D、p+2

  首先定义一个整型数组a,a的长度为5,然后定义一个指针变量p,并同时对p进行初始化,将数组a的地址赋给p。因此此时p中存放的数组a的首地址,即数组中第一个元素a[0]的地址。

  对于数组元素下标的引用(详见p144), 一般形式 数组名[下标] 其中下标为逻辑地址下标,从0开始计数,方括号中的下标可以是变量,可以是表达式,但结果一定要是整数。

  选项A,p中存放的是地址,不是整数,不能做数组元素的下标

  选项B,a是数组名,数组名就是地址,不是整数,不能做数组元素的下标

  选项C,(重点!!!详见p231~234) p+2表示指向同一数组中的下两个元素的地址,当前p指向a[0],则p+2表示a[2]的地址,因此*(p+2)表示a[2]的内容

  40. 有如下程序

  int a[10]={1,2,3,4,5,6,7,8,9,10},*P=a;

  则数值为9的表达式是 B

  A、 *P+9

  B、 *(P+8)

  C、 *P+=9

  D、P+8

  (重点!!!详见p231~234)

  首先定义一个整型数组a,a的长度为5,然后定义一个指针变量P,并同时对P进行初始化,将数组a的地址赋给P。因此此时P中存放的数组a的首地址,即数组中第一个元素a[0]的地址。

  数组中9对应的是a[8], 选项B,P+8表示数组中后8个元素的地址,即a[8]的地址。*(P+8)则表示该地址内所存放的内容,即a[8]的值。

  选项A,*P表示P所指向对象的内容,此时P指向a[0], *P即a[0]的值1. *P+9=1+9=10

  选项C,*P表示P所指向对象的内容,此时P指向a[0], *P即a[0]的值。因此*P+=9 即*P =*P+9, 等价于a[0]=a[0]+9.

  选项D,P+8表示数组中后8个元素的地址,即a[8]的地址,而非a[8]中的值。

  41. 在C语言中,以 D 作为字符串结束标志

  A、’\n’

  B、’ ’

  C、 ’0’

  D、’\0’

  42.下列数据中属于“字符串常量”的是( A )。

  A、“a”

  B、{ABC}

  C、‘abc\0’

  D、‘a’

  若干个字符构成字符串

  在C语言中,用单引号标识字符;用双引号标识字符串

  选项B,C,分别用{}和’’标识字符串

  选项D,标识字符。

  43.已知char x[]="hello", y[]={'h','e','a','b','e'};, 则关于两个数组长度的正确描述是 B .

  A、相同

  B、x大于y

  C、x小于y

  D、以上答案都不对

  C语言中,字符串后面需要一个结束标志位'\0',通常系统会自动添加。

  对一维数组初始化时可采用字符串的形式(例如本题数组x),也可采用字符集合的形式(例如本题数组y)。在以字符串形式初始化时,数组x不尽要存储字符串中的字符,还要存储字符串后的结束标志位,因此数组x的长度为6;在以字符集合形式初始化时,数组y,仅存储集合中的元素,因此数组y长度为5

上一页  1 2 

  相关推荐:

  各地2015上半年计算机等级考试报名时间汇总

  考试吧特别策划:2015年计算机等级考试报考指南

  2015年全国计算机等级考试无纸化考试系统操作指南

文章搜索
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。
Copyright © 2004- 考试吧计算机等级考试网 All Rights Reserved 
中国科学院研究生院权威支持(北京) 电 话:010-62168566 传 真:010-62192699