C语言

计算机二级C语言考前测试题与答案

时间:2024-08-29 11:19:05 C语言 我要投稿
  • 相关推荐

2017计算机二级C语言考前测试题与答案

  2017年3月全国计算机等级考试时间为考试时间为3月25日至28日,为帮助大家复习C语言考试科目,以下是百分网小编搜索整理的一份2017计算机二级C语言考前测试题与答案,供参考练习,希望对大家有所帮助!想了解更多相关信息请持续关注我们应届毕业生考试网!

2017计算机二级C语言考前测试题与答案

  一、选择题

  1). 以下叙述中正确的是( )

  A.在C语言中,预处理命令行都以″#″开头

  B.预处理命令行必须位于C源程序的起始位置

  C.#include 必须放在C程序的开头

  D.C语言的预处理不能实现宏定义和条件编译的功能

  正确答案:A

  答案解析:在C语言中,凡是以″#″号开头的行,都称为″编译预处理″命令行。预处理命令可以放在程序中的任何位置,其有效范围是从定义开始到文件结束。预处理命令有宏定义、文件包含和条件编译三类。#include 命令行表示程序中要引用C标准函数库中的标准输入输出函数。

  2). 下列叙述中,不属于测试的特征的是

  A.测试的挑剔性

  B.完全测试的不可能性

  C.测试的可靠性

  D.测试的经济性

  正确答案:C

  答案解析:软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。它有3个方面的重要特征,即测试的挑剔性、完全测试的不可能性及测试的经济性。其中,没有测试的可靠性这一说法。

  3). 以下选项中不属于C语言标识符的是( )

  A.用户标识符

  B.关键字

  C.常量

  D.预定义标识符

  正确答案:C

  答案解析:C语言的标识符可分为以下3类:①关键字。C语言预先规定了一批标识符,它们在程序中都代表着固定的含义,不能另作他用。这些字符称为关键字。例如,int、double、if、else、while、for等。②预定义标识符。即预先定义并具有特定含义的标识符。③用户标识符。由用户根据需要定义的标识符称为用户标识符,又称自定义标识符,一般用来给变量、函数、数组等命名。

  4). 一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为( )

  A.16

  B.10

  C.6

  D.4

  正确答案:A

  答案解析:根据二叉树的性质,在任意二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个,故此度为1的结点个数=总结点数-叶子节点数-度为2的节点数=25-5-4=16。

  5). 设有定义 char str[] = ″Hello″; 则语句 printf(″%d %d″, sizeof(str), strlen(str)); 的输出结果是( )

  A.6 6

  B.6 5

  C.5 5

  D.5 6

  正确答案:B

  答案解析:sizeof主要用于测试变量所占的实际内存,而strlen函数主要测试字符串中实际字符的个数,字符串″Hello″占有内存6个字节,而字符串中共有5个字符。

  6). 下列关于栈和队列的描述中,正确的是( )。

  A.栈是先进先出

  B.队列是先进后出

  C.队列允许在队头删除元素

  D.栈在栈顶删除元素

  正确答案:D

  答案解析:栈实际也是线性表,只不过是一种特殊的线性表。栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。队列是只允许在一端删除,在另…端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。

  二、程序填空题

  下列给定程序中,函数fun的功能是:将形参n中个位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新数,作为函数值返回。

  例如,输入一个整数27638496,函数返回值为64862。

  请在程序的下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANKl.C中。

  不得增行或删行,也不得更改程序的结构!#include

  unsigned long fun(unsigned long n){unsigned long x=0;int t;

  三、程序修改题

  下列给定程序中函数fun的功能是:将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。

  例如,当s中的数为87653142时,t中的数为7531。请改正程序中的错误,使它能得出正确的结果。注意:部分源程序在文件MODll.C中,不得增行或删行,也不得更改程序的结构!

  四、程序设计题

  编写函数fun,其功能是:实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连接到pl所指的字符串的后面。

  例如,分别输人下面两个字符串:FirstString--SecondString

  程序运行后的输出结果是:FirstString————SecondString

  注意:部分源程序在文件PROGl.C中。

  请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

》》参考答案与解析《《

  二、程序填空题

  【参考答案】

  (1)0

  (2)10*x

  (3)n/10

  【考点分析】

  本题考查:已知某数,如何求该数各个位数值,已知各个位数值,如何表示该数;除法运算。

  【解题思路】

  填空l:定义变量t用来存放某数的各个位数值,此处判断t是否为偶数,即对2求余结果是否为0。

  填空2:将t作为x的个位数,原来x的各个位上升l位,即x=10{x+1。

  填空3:每循环一次,通过除法运算,去掉数值最后一位。

  【解题宝典】

  如果知道某数n的各个位的数值,可以得到该数值n,如n的`个位为a、十位为b、百位为c,那么n=c}100+b*10+a。如果知道数值n,可以采用求余和除法操作来表示其各个位,如n%10(取个位)、n/J0(取十位),读者可以自己考虑一下,如果是三位数,如何提取各个位?四位数呢?

  三、程序修改题

  【参考答案】(1)}t=0;(2)if(d%2 1=O)或if(d%2==1)

  【考点分析】

  本题考查:指针型变量作为函数参数;if语句条件表达式,结合奇偶数的表示方法来确定该表达式内容。

  【解题思路】

  (1)由函数定义可知,变量t是指针变量,所以对t进行赋初值0是不对的。因为t指向的是存放新数的变量,所以此处应给新数赋初值0,即。t=0。

  (2)变量d表示数S各个位上的数,此处的if条件应为判断d是否为奇数。

  四、程序设计题

  【参考答案】voidfun(char pl[],char p2[])

  in“,j;

  for(i=0;pl[i]f=。、0’;i++);

  for(j=0;p2[j]!=。、0’;j++)p1[i++]=p2[j];

  p1[i],_。、0’;}

  【考点分析】“

  本题考查:不使用字符串函数实现字符串连接操作。通过for循环语句来完成,不要忘了最后需要加上字符串结束标识‘、0’。

  【解题思路】

  本题用两个循环完成操作,第1个循环的作用是求出第l个字符串的长度,即将i指到第1个字符串的末尾。第2个循环的作用是将第2个字符串的字符连到第l个字符申的末尾。最后在第l个字符串的结尾加上字符串结束标识‘、0’。

【计算机二级C语言考前测试题与答案】相关文章:

2017计算机二级C语言测试题及答案08-09

2023计算机二级C语言测试题及答案10-23

计算机二级《C语言》测试题及答案202411-02

2016计算机二级《C语言》测试题及答案08-23

计算机二级《C语言》测试题与答案解析10-30

计算机二级C语言测试题及答案解析07-11

计算机二级C语言预测试题及答案10-30

计算机二级C语言测试题及答案201610-09

2017计算机二级考试《C语言》考前冲刺题及答案07-06

2017计算机二级C语言考前热身训练题及答案09-15