计算机二级练习题答案.doc

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

C语言的结构

17 1.函数,主(main)函数,main函数,函数。

函数是C语言中最重要的概念之一。

2.模块化,结构化。

这是程序设计两大思想之一,另外一个想法就是面向对象的程序设计。

3.文件包含命令,头文件。

文件包含属于编译预处理方面的内容。

4.double s; ,{}。

考生需要清楚C语言的源程序的基本格式是什么。

5.大,不太严格,好,直接。

这些就是C语言的特点,也是C语言相对于其他语言的特别之处。

6.C。main函数在C语言源程序中的地位是非常特别的。

数据类型及其运算

1.构造,指针,字符型、实型,结构体,共用体。

C语言提供了丰富的数据类型,这也是C语言比较灵活的原因之一。

2.B。字符常量的书写形式要求是单引号而非双引号,所以D不对;ab不是字符而是字符串,所以C不对;八进制084超出了字符范围,也是错误的;只有B是合法的字符常量。

3.结合性,自左至右,自右至左。

运算符的优先级和结合性是比较重要的知识点,一些常用运算符的优先级和结合性必须熟悉。

4.A。%前后要求是整型数据,其他均无此要求。

5.A。在C语言中,逻辑与运算是通过运算符&&来实现的。

6.C。这里涉及到数据类型的转换问题。

7.A。C语言规定,在一个数据之后加一个L就表示该数据是长整型数据。

8.D。自减运算符--的结合性是自右至左。X--表示在使用x之后,使x减1;--x表示在使用x之前先使x减1。

基本语句

1.函数调用,表达式,复合,空。

C语言的语句共有5类,如题所示。

2.B。C语句有特定的格式,从这一点来考查就可以看出A和C是错误的,对于赋值语句,需要有赋值方和被赋值方,只有选项B适合。

3.B。C语言的输入语句需要用到特定的输入函数scanf,在使用该函数时,需要注意函数的两个方面:格式控制和地址表列。

4.D。注意,使用输入函数scanf输入数据时不能规定精度,也就是说,如同选项D 这种形式的写法是错误的。

5.D。输入函数scanf的输入项不能是任何形式的常量,而必须是地址,并且地址项是必须存在的,而不能是可有可无的,即输入数据时必须指定变量地址。

18 6.C。这是一个空语句的典型例子。例子中还使用了函数调用语句调用标准函数getchar()。

选择结构程序设计

1.A。选择结构给出了两种可选情况。

2.B。对于不同的x给出了两种情况,在这两种情况下分别进行不同的运算。

3.C。条件运算符要求有3个操作对象,所以称其为三目运算符,这是C语言中惟一的一个三目运算符。条件表达式(m

4.A。对于本题,首先要清楚运算符的优先级。非(!)运算符最高,然后是算术运算符、关系运算符和逻辑与和逻辑或、赋值运算符等。

5.A。switch语句是多分支选择语句。

循环结构程序设计

1.A。对于一个循环,需要注意的是循环变量赋初值、循环条件和循环变量增值这三方面。循环也可以嵌套,在这种情况下循环次数的计算要将两个循环体的次数相乘。

2.D。首先要确定循环变量赋初值、循环条件和循环变量增值这3个起始条件,然后可以判断循环结束后i和j分别处于什么状态。

3.B。同样要确定循环变量赋初值、循环条件和循环变量增值这三方面。

4.D。本题包含一个循环语句和选择语句。对于循环语句,需要清楚循环条件;对于选择语句,需要明确选择的各个分支。

5.D。本题包含do-while循环结构。考生同样需要清楚循环变量赋初值、循环条件和循环变量增值这三方面。

6.D。对于do-while语句构成的循环,考生要分清它和for循环等语句的区别,特别是结束循环的条件之间的区别。

数组的定义和引用

1.D。在数组初始化时,如果花括弧中提供的初值个数大于数组长度,则做语法错误处理,如果小于数组长度,则其余的元素自动定为空字符。

2.D。printf函数不能直接输出字符串。

3.C。数组x的长度定义中包含一个空字符'\0',而数组y中则不包含该空字符。

4.9,0

数组的下标使用方法。

5.C。对数组初始化或者赋值是有一定的规则的,选项A和B均是错误的赋值语句,而选项D的错误在于输入函数scanf不能这样使用。

6.C。对字符数组不能使用赋值语句对其整体赋值。

7.C。关于数组元素的引用方法。

函数

1.B。函数的实参是指用逗号分开的几个实体,而并不包括各个实体中的具体内容。以本题为例,由逗号分开的实体有两个,而在这两个实体中的内容则不必理会。

19 2.C。分清函数调用和表达式之间的区别。sizeof 所构成的仅仅是一个表达式而已,并不是函数调用。同时要清楚,sizeof得到的值是double类型的字节数,所以是一个

整型数据,而非双精度数据。

3.C。本题需要清楚库函数strcpy的调用方法。具体可以参见库函数手册。

4.C。函数的类型即函数返回值的类型。该函数的返回值是执行函数printf正确与否,正确则返回1,错误则返回0,所以该函数的类型是int型。

5.A。函数既可以直接递归调用也可以间接递归调用。

6.A。调用函数就是将实参的值传给形参,但形参的值是不能返回给实参的。函数可以递归调用,但不能嵌套定义。函数不必一定有返回值,可以是void类型的。有调用关系的函数不必在一个源文件中,只要在主函数中说明即可。

7.C。在C语言中,外部变量的隐含类别是静态存储类别。

编译预处理

1.宏定义,文件包含。

考生应清楚C语言提供的预处理功能,并且清楚其概念。

2.答案略。

编译预处理是C语言特有的一个重要功能,它由预处理程序负责完成。当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分做处理,处理完毕自动进入对源程序的编译。编译预处理是在进行编译的第一遍扫描(词法扫描和语法分析)之前所做的工作。

3.MYSW AP(c,a,b)

根据宏定义的展开规则,本题不难作答。

4.D。本题同样需要清楚宏定义的展开规则。

5.C。宏定义的展开是编译预处理一章的考查重点,考生务必要对其熟悉。

指针

1.A。将一个整型变量赋给一个指针类型的变量,只能是将整型变量的地址赋给指针变量。利用取地址运算符&得到变量x的地址,从而将其赋给指针变量pb。

2.B。比较字符串s和t的大小。

3.C。说明int(*ptr)[m];的含义就是定义一个数组指针,该数组指针指向一个具有m

相关文档
最新文档