计算机二级考试C上机考试试题_第1页
计算机二级考试C上机考试试题_第2页
计算机二级考试C上机考试试题_第3页
计算机二级考试C上机考试试题_第4页
计算机二级考试C上机考试试题_第5页
已阅读5页,还剩3页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——计算机二级考试C上机考试试题试题的练习能够扶助考生们加深对学识点的理解和稳定,接下来免费学习我为大家用心打定了计算机二级考试C++上机考试试题,梦想能够给大家带来扶助!

一、程序改错题

使用VC++6.0开启考生文件夹下的源程序文件1.cpp,使其输出结果为:

n=0

留神:不要改动main函数,不能增加或删除行,也不能更改程序的布局,错误的语句在//******error******的下面。

试题程序:

#include

//********error*******。

classTC

public:

//********error********

void~TC

TCintn

cout’n’’=’;

//********error********

voidmain

TCtest0;

return;

二、简朴应用题

使用VC++6.0开启考生文件夹下的源程序文件2.cpp。请完成函数funchar*str,charch的定义,本函数采用二分法,在已按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否那么返回1。

二分法查找的思想是初始查找区间的下界为0,上界为len-1,查找区间的中部后,k=下界+上界/2;若list[k]等于ch,查找告成;若list[k]ch,那么新的查找区间的下界不变,上界改为k-1;否那么新的查找区间的下界改为k+1,上界不变。在新区间内持续用二分法查找。

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

试题程序:

#includeiostream.h

intfunchar*str,charch

voidmain

charstr[]=’a’,’b’,’C’,’d’,’e’,’f’,’9’,’h’,’i,’

j’,’k’;

charch;

cout请输入一个字符:cinch;

cout输入字符的位置是:return;

三、综合应用题

使用VC++6.0开启考生文件夹下的源程序文件3.cpp,阅读以下程序说明和代码,功能如下:

从屏幕输入数字,然后由大到小插入到指定的链中。当输入0时,表示输出的数据已经输入完成,把数据打印到屏幕,并释放内存。

其中定义的类不完整,按要求完成以下操作,将类的定义补充完整。

1在父结点的Next中保存新插入的结点的指针,请在解释1后添加适当的语句。

2把pNext的子结点赋给pNext本身,请在解释2后添加适当的语句。

3判定P的子结点不为空,假设不为空,那么打印P中的数据到屏幕,请在解释3后添加适当的语句。

4用t1保存动态申请内存结点的链表头,请在解释4

后添加适当的语句。

留神:仅在函数指定位置添加语句,请勿改动主函数

main与其他函数中的任何内容。

试题程序:

#include

classTC

public:

TCintdata=O

this-data=data;

this-next=NULL;

intdata;

TC*next;

;

voidInsertTC*P,intdata

TC*temp=newTCdata;

TC*pParent=P:

TC*pNext=p-next:

whilepNext

ifdatapNext-data

//********1********

temp-next=pNexti

return;

else

pParent=pNext;

//********2********

ifpNext==NULL

pParent-next=temp;

return;

voidprintfTC*p

//********3********

while

coutdata;

P=P-next;

cout

voidDeleteTC*p

//********4********

TC*t1=;

TC*t2;

whilet1!=NULL

t2=t1-next:

tl;

t1=t2:

voidmain

inti=0;

TChead:

do

intdata;

cout请输入一个数字:cindata;

ifdata==Obreak;

Inserthead,data;

while1;

printfhead;

Deletehead:

return;

上机考试试题答案与解析

一、程序改错题

1应改为“classTC”。

2应改为“~TC”。

3应改为“;”。

此题第1处的“classTC”为类的定义,根据C++中类的定义格式,类名后面是没有括号的,所以第1处应为“classTC”。第2处的“void~TC”是析构函数,C++中析构函数的格式中是没有函数类型说明的,所以修改为“~TC”。根据C++中类的定义,第3个标识下类终止的“”缺少分号,即修改为“;”。

二、简朴应用题

intlow=0;//初始查找区间的下界

inthigh;

intk;

forhigh=0;str[high]!=0;high++//求字符串长度

while10w

k=low+high/2;

ifstr[k]==ch

returnk;

elseifstr[k]ch

high=k-l:

elselow=k+1:

ifstr[low]==ch

returnlow;

return-1:

此题首先初始查找区间的下界为0,然后求得字符串长度len,上界为len-1,查找区间的中部后,k=下界+上界/2;若list[k]等于ch,查找告成。若list[k]ch,那么新的查找区间的下界不变,上界改为k-1;否那么新的查找区间的下界改为k+1,上界不变。

三、综合应用题

1应添加“pParenl-next=telnp;”。

2应添加“pNext=pNext-next;”。

3将“while”补充完整为“whileP-next!=NULL”。

4将“TC*t1=;”补充完整为“TC*t1=P-next;”。

此题第1处要求“在父结点的Next中保存新插入的结点的指针”。对于指针的操作,pParent-next为pParent的子结点,在父结点的Next中保存新插入的结点的指针,即“pParent-next=temp;”。第2处要求“把pNext的子结点赋给pNext本身”。pNext-next为pNext的子结点,把pNext的子结点赋给pNext本身,即“pNext=pNext-next

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论