2022年四川省达州市全国计算机等级考试C++语言程序设计预测试题(含答案).docx
2022年四川省达州市全国计算机等级考试C+语言程序设计预测试题(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1 .下列关于构造函数的描述中,错误的是()A.构造函数可以设置默认参数B.构造函数在定义类对象时自动执行C.构造函数可以是内联函数D.构造函数不可以重载2 .最简单的交换排序方法是()。A.快速排序B.选择排序C.堆排序D.冒泡排序3 .若二维数组a有m歹IJ,则计算任一元素在数组中相对位置的公 式为(假设a00位于数组的第一个位置上)()。A.i*m+j B.j*m+I C.i*m+j-l D.i*m+j+l4 .下列程序的运行结果为#include < iostream.h >void main()(int a = 2;int b = a + 1;n-:):kJ*个个个个个个个个rror个个个个个个不不intCO: n;voidmainCOobj ;COobj27;CO*C=NULL:c=&obj:kL* kL*vl* Vy*vL*个个个个个个不不不不不不不不下eout«C . n«endl ;cout«C0: n«endl;37.使用VC+6. 0打开考生文件夹下的源程序文件 1. cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为从键盘输入一个字符串,并将结果保存到文件1.txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在* error* * 白勺 -jj| 。试题程序:#include<iostream>#include<fstream>error不不小不不不不小usingstd;voidWriteFile(chars) (ofstreamoutl ;error不不不不不不不不outl. open(H1. txt", binary|app);for(inti=0; si!=0; i + +)error不小小不不不小小outl. puts(si);outl. close;voidClearFile(ofstreamoutl;outl. open(nl. txt");outl. close;intmain(chars 1024;ClearFile;n«endl;cout«npleaseinputastrin9 :cin. getline(s, 1024);WriteFile(s);returnO;)38.使用VC+ +6 .。打开考生文件夹下的源程序文件1 . cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现 的功能为从键盘输入一个字符串,并将结果保存到文件1 . txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在kL*kL*error的下面。试题程序:#include<iostream>#include<fstream>7,7,个个个个个个个个个个个个个个个个usingstd ;voidWriteFile(char*s) (ofstreamoutl ;erroroutl . open(Hl . txt", binary|app);for(inti=0 ; si!=0 ; i + +)erroroutl . puts(si); )outl . close ;voidClearFile (ofstreamoutl ;outl . open(nl . txt");outl . close ;)intmain (chars 1024;ClearFile ;cout«npleaseinputastrin9 :n«endl ;cin . getline(s, 1024);WriteFile(s);returnO ;)39 .使用VC + +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为Constructor, i=0,Destructor注意:错误的语句在/ / *error*的下面,修改该语句即可。试题程序:#include(iostream . h) classTCinti ;public :TC ;voiddisplay ;TC ;TC : TC cout«nConstructorn«n," i=0;vL*kL*vL* vl* vl* kL*不不不不不不en*or不不不不不不TC : display tout«ni=n«i«n, n«endl ;不不不不不不en*or不不不不不不TC : TCCOUI«nDestructorn«endl :) voidmainTCa ;a . display ;40 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number= 1 number=10 number=100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *errc)r*的下面。试题程序:#include<iostream. h>classTC (public:TC(inti) ( number=i;) voidSetNumber(intm) (number=m ; intGetNumberconst (returnnumber; voidPrintconst (cout«nnumber=n«number«endl;) private:intnumber;voidmain个个个个个个个个rror个个个个个小个个TCobjl;objl. Print;TCobj2(3);KL> KL>KL>k1> KE个个个个个个个个rror个个个个个个个个objl. number= 10;! 1 * eno* 0 * *TC. SetNumber(l 00);objl. Print;obj2. Print;41 .使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cppo本程序要 求输入一个字符串,然后将其中的小写字母改成大写字母,字符可能输 入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出到屏幕 中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include<iostream . h> voidmain (inti=O ;charstr120;cout«nEnterastringendwith? . n«endl ;rr*rT*error*1* *i* *1* *4* *1> ryw rj* *rw T* *Twcin . getline(str, 120);kI> kJ> k1> kf> 7, error不不小不不不不小while(str)errorif(stri)=a)stri=stri-a + A ;i+ + ;)cout«str«endl ;return ;42 .使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number= 1numbcr= 10number= 100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *error*的下面。试题程序:#include<iostream . h> classTC public :TC(inti) number=i ;voidSetNumber(intm) number=m ;intGetNumberconst returnnumber ;voidPrintconst cout«nnumber=n«number«endl ;private :intnumber ;voidmain个个个个小个个个nor个个小个个个个个TCobjl ;objl . Print ;TCobj2(3);error7" 7” 7, 7, 7> 7,7, 7, rj* rT> rj. rJ. rj.objl . number= 10 ;I ! * error* * *TC . SetNumber(lOO);objl . Print ;obj2 . Print ;43 .使用VC+6. 0打开考生文件夹下的源程序文件1. cpp。本程序 要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可 能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出 到屏幕中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include<iostream . h> voidmain(inti=O;charstr120;cout«nEnterastringendwith?. n«endl;个个个个个个个个个个个个个个个cin. getline(str, 120);errorcout < < a/b < < endl;)5 .一棵二叉树中所含最少的结点数是A.0B.1 C.2 D.36 .以下程序的输出结果是 #include < iostream.h > void main( ) char x=040 ; cout < < (X < < 1);A.100B.80C.64 D.327 .在下面的4个关键字中用来说明虚函数的是()。A.virtual B.public C.protected D.private8 .在 int a5=l, 3. 5;中,al的值是( )o A.0B.1 C.3 D.59 .有以下程序:#include < iostream > using namespace Std ; int a ; int fun() ; int main() extern int a ; intb ; a = 100 ; b = fun() ; cout < < b < < endl ; return 0 ; int fun() extern int a; return (10*A); 其程序 运行后的输出结果是()。10 .在下列关于关系的陈述中,错误的是 OA.表中任意两行的值不能相同B.表中任意两列的值不能相同C行在 表中的顺序无关紧要D.列在表中的顺序无关紧要二、单选题(13题)11.while(str)7, 个个个个个个个个rror个个个个个个个个if(stri)=a)stri=stri-a+A;i+ + ;cout«str«endl ;return ;44 .使用VC + +6.0打开考生文件夹下的源程序文件1 .cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:9, 8, 7, 6, 5注意:错误的语句在/ *error* /的下面,修改该语句即可。其他的语句不能修改。试题程序:#include(iostream . h> classTC个个不个个个个个个个个个个个个个TC(inti) m i=i ;voidprint cout«m_i«,)public :intm i ;intmaink!> k!> k.!> kJ> k1> kJ> enor不不不不不不不不inti ;TC04(10);while(i>5)! * * * !i+ + :04 . print ; cout«endl ;returnO ;45 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为errorOERROR注意:不要改动main函数,不能增加或删除行,也不能更改程序的结的下面。构,错误的语句在/ / *errc)r*试题程序:#include<iostream. h) intmain try throw(nerrorn);catch(chars) cout«s«endl ;) try throw(int)0);si个不不不不不不不nor不不不不不不不不catch cout«i«endl;) try throw(O);throw。error");个个个个个个个个nor个个个个个个个个catch cout«nERRORn«endl;) returnO ;五、综合应用题(2题)46 .请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程 proj3,其中声明的DataList类,是一个用于表示数据表的类。DataList 的重载运算符函数Operator+,其功能是求当前数据表与另一个相同长 度的数据表之和;即它返回一个数据表,其每个元素等于相应两个数 据表对应元素之和。请编写这个operator+函数。程序的正确输出应该 是: 两个数据表:1, 2, 3, 4, 5, 63, 4, 5, 6, 7, 8两个数据表之 和:4, 6, 8, 10, 12, 14 要求: 补充编制的内容写在“*333*”与“""米"/""Ggg*51c”之间,不得修改程序的其他部分。注意:程序最后将结果输出到文件。ut. dat中。输出函数writeToFile已经编译为。bj文件,并且在本程序中调用。/DataList. h #inClude<iostream> using namespaCe std;ClaSS DataList数据表类 intfen;double*d; public:DataList(int len, double data口二NULL) ;DataList(DataList&data);int lengthConst return len ; double getElement(int i)Constt return di; DataList operator+(Const DataList&list)Const; 两个数据表求和 void showConst; 显示数据表 );void writeToFile(Char$, Const DataList&) ;/main. Cpp#inClude,DataList. h"DataList: DataList(int len, double data): len(ien) d=new doublet len;for(int i=0 ; i<len; i+)d(九)i=(data=NULL?O. 0: datai); )DataList: DataList(DataList&data): len(data. len) d=newdoublet len;for(int i=0; i<len; i+) di=data. di;DataList DataList: 0perator+(Con8t DataList&list, )Const两个数据表求和 double*dd=new doublet list. 1 ensth;*333*666*return DataList(list. 1 ength, dd) ; void DataList: showConst显示数据表 fr(into i=0; i<len-l ; i+) eout«di«", ";Cout«dl en-l«endl ;int main double sl=l, 2, 3, 4, 5, 6;double s2=3, 4, 5, 6, 7, 8;DataList list 1(6, si), list2(6, s2);/定义两个数据表对象 eoutvv”两个 数据表:,«endl:listl. show: list2. show; eoutwendlw”两个数据表之和:,«endl:(listl+list2). show;writeToFile(,» listl+list2); return 0 :47 .使用VC+6. 0打开考生文件夹下的源程序文件3. cpp,其中定 义了类BA、PA1和PA2,其中PA1类由BA类公有派生,PA2类由 PA1类公有派生。上述3个类的定义并不完整,请按要求完成下列操 作,将程序补充完整。程序输出结果如下:105 1057定义类BA的构造函数,该构造函数有一个整型的参数m,在构造 函数中将m赋值给数据成员ao请在注释1之后添加适当的语句。定义类PA1的构造函数,该构造函数有两个整型的参数m和n,在 构造函数中将m赋值给数据成员b,将n作为基类BA构造函数的参 数值传人。请在注释2之后添加适当的语句。定义类PA2的构造函数,该构造函数有3个整型的参数m、n和 k,在构造函数中请将m赋值给数据成员c,将n和k分别赋值给基类 PA1构造函数的参数m和no请在注释3之后添加适当的语句。(4)完成类PA2的成员函数show的定义,该函数调用基类成员函数, 输出基类私有成员a、b及类PA2自身的数据成员C的值,上述3个 值在输出时用空格隔开。请在注释4之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 试题程序:#include(iostream. h>classBA(inta;public:intgetareturna; ;classPAl : publicBA (intb;public:/kJ>/rT* Jintgetb returnb ;);classPA2 : publicPAl (intC;public:/ vL*kL*/4 rr>、rr>voidshow1 1 *4*;voidmain(PA2a(7, 5, 10);cout«a . geta«endl ;cout«a . getb«endl ;a. show;六、3.综合应用题(2题)48.使用VC6打开考生文件夹下的工程MyProj8o此工程包含一个源程 序文件MyMain8.cpp,该程序实现栈的入栈和出栈的操作。其中有两个 类:一个是节点类node,它包含节点值和指向上一个节点的指针prey ; 另一个类是栈类stack,它包含栈的头指针top。但类的定义并不完整。请按要求完成下列操作,将类Sample的定义补充完成:定义私有节点值data,它是血型的数据,以及定义一个指向上一个节 点的指针prev。请在注释“/* *1* *”之后添加适当的语句。完成构造函数node(intd,node*n)的定义,使得私有成员data和prev分 别初始化为d和no请在注释“/* *2* *”之后添加适当的语句。完成类stack的成员函数push(int i)的类体内的定义。函数push。实现 入栈这个操作,即把形参i压入栈中,那么此时应该创建一个新的节点, 并让这个节点的prev指针指向栈顶。请在注释“* *3 * *”之后添加适当 的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件MyMain8.cpp清单如下:/MyMain 8.cpp#include < iostream >using namespace std;class stack;class node(private:* * * *public:node(int d, node *n)(* * 2 * *)friend class stack;);class stack(node * top;栈头public:stack()top=0;void push(int i)(* * 3 * *)int pop()(node*t=top ;if(top)(top=top- > prev ;int c=t- > data ;delete t ;return c ;)return 0 ;);int main()(stack s ;s.push(6);s.push(3);s.push(l);return 0 ;)49.使用VC6打开考生文什夹下的工程testl_3o此工程包含一个在软件开发中,下面不属于设计阶段的任务的是()oA.数据结构设计B.定义模块算法C.给出系统模块结构D.定义需求并建立系统模型12 .有如下程序段int i =0, j=l;int & r=i; / r =j; / int*p= & i ; / (3)*p= & r ; / ®基中会产生编译错误的语句是A.® B. C.D.13 .下列关于类定义的说法中,正确的是A.类定义中包括数据成员和函数成员的声明B.类成员的缺省访问权限是保护的C.数据成员必须被声明为私有的D.成员函数只能在类体外进行定义14.软件详细设计产生的如下图所示。该图是(A.NS图B.PAD图C.程序流程图D.ER图 testl_3.cpp,其中定义了 类 circle 和 column,其中 column 类由 circle 类 protected派生,但两个类的定义并不完整。请按要求完成下列操作,将 程序补充完整。定义类circle的保护数据成员r和area,它们都是double型的数据。请在注释“/* 1 * ”之后添加适当的语句。添加类circle的无参数的构造函数,使circle对象的r默认值为0,请 在汁释“*2*,之后添加适当的语句。(3)添加派生类column构造函数的定义,传入的参数为double型的height 和radius,并将具分别赋值给数僻成员h和基类的r,请在注释“*3*” 之后添加适当的语句。(4)完成派生类column的成员函数print的定义,使其以格式“r=_area=_" 先输出半径r和底面积area,再以格式“h=_vol=_”输出高h和体积vol 的值,请在注释“*4*”之后添加适当的语句。输山结果如下:r=l area=3.1416 h=2 vol=6.2832注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。源程序文件testl_3.cpp清单如下:#include < iostream.h >const double pi=3.1416; class circle(protected:*public:circle(double radius) r=radius;void print()(area=r*r*pi;cout < < nr=n <<r<<n!<< narea=n < < ared < < endl;);class column: protected circle(protected:double h;public:* 3 *void print()( * 4 *);void main()(column col(l.0,2.0);Col.print();参考答案LD解析:构造函数是类的一个特殊成员函数,它与类同名,并且没有 返回值。C+在创建一个对象时,会自动调用类的构造函数,在构造函 数中可以执行初始化成员变量的操作。构造函数可以是内联函数,也可 以重载。2 .D冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小 数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个 数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数 放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大 数放后。至此第一趟结束,将最大的数放到了最后。在第二趟:仍从 第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得 第1个数不再小于第2个数),将小数放前,大数放后,一直比较到 倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在 倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大 的数)。如此下去,重复以上过程,直至最终完成排序。3 .A解析:元素之前有i行元素(每行有m个元素),在的前 面还有j个元素,因此之前共有i*m+j个元素。4 .B解析:表达式值的类型是由操作数的类型决定的,因为本题的两个 数都是血型的,所以得出的结果也为血型,即去掉小数点后的部分, 只取商的整数部分。5 .A解析:这是考查概念,空二叉树中所含最少的结点数是。个。6 .C解析:左移1位,相当于乘以2,题中的x的值是一个八进制数, 转换为十进制数是32,再乘以2, x的值为64。7 .A解析:C+中说明虚函数的方法为:virtual类型说明符函数名 (参数表 );。其中,被关键词virtual说明的函数称为虚函数。8 .C解析:数组的下标是从0开始的。9 .C解析:本题考核变量的作用域、生存周期和存储类别(自动、静态、 存储器、外部)。先来了解外部变量:外部变量用关键字extern表示。由 于外部变量可以被程序中的所有函数共同访问,其作用域为全局,因此 也称为全局变量。对于外部变量而言,“定义变量”和“说明变量”是两个 不同的概念。定义a为外部变量是告诉编译程序,a是一个外部变量, 并要求系统为a分配一个固定的永久存储空间。a的值在整个程序的运 行期间都存在,只有当定义它的程序运行结束时,它的存储空间才释放。 外部变量定义后,当程序中的函数要引用外部变量时,应在函数中作引 用说明。在此程序中,在第二行定义了一个外部变量a,主函数main给 外部变量赋的初始值为100,当调用函数fun()时,外部变量a的值传到 函数fun()中,因此函数所返回的值为100*10=1000。10 .A11 .D解析:软件设计一般分为总体设计和详细设计两个阶段,总体设 计的任务是确定软件的总体结构,子系统和模块的划分,并确定模块间 的接口和评价模块划分质量,以及进行数据分析。详细设计的任务是确 定每一模块实现的定义,包括数据结构、算法和接口。定义需求并建立 系统模型是需求阶段的任务。12 .A13 .A解析:本题考查的知识点是:类的定义。类中缺省的访问权限是私有 的(private),所以选项B)不正确:类的数据成员和函数成员的访问控 制权限均可被声明为公有(public)私有(priate)和保护(protected)中的 任意一种,所以选项C)不正确;成员函数的实现即可以在类体内定 义,也可以在类体外定义,所以选项D)不正确。故本题应该选择 Ao14 .CC。【解析】NS图是由若干基本框图构成的流程图,其特点是没 有流程线;PAD图即问题分析图(ProblemAnalysisDiagram),它是一种由 左往右展开的二维树型结构;程序流程图用于描述问题解决的过程和步 骤,其中方框表示处理步骤、菱形框表示逻辑判断、箭头表示控制流向; E-R图即实体一联系图(EntityRelationshipDiagram),用来描述现实世界 的概念模型,构成元素有实体、属性和联系,分别用矩形、椭圆形和菱 形表示。本题答案为C。15 .A【答案】:A【知识点】:二叉树的性质【解析】:由二叉树的性质3可知,度为。的结点数(即叶子结点 数)二度为2的结点数+1。题目中给出叶子结点数为5个,利用性质3 可计算出度为2的结点数为4个。在二叉树只有三种结点:度为0 的、度为1的、度为2的,总数为25个,所以度为1的结点数即为 2554=16个,所以答案为A。16.B解析:本题考查的是输入输出函数的使用,gets和getchar函数用于从 标准输入设备终端读八字符串和字符,并非从磁盘文件读入,fputs用 于把字符串输出到文件,fwrite用于以二进制形式输出数据到文件,故 选项B)描述错误。17.AAo【解析】*a口表示一个字符串数组,for循环的作用是输出字符串数 组中每一次字符串的第一个字符。所以正确答案为选项A。18.DDo【解析】模板形参有typename(参数名、class参数名、类型修 饰参数名3种形式,即typename与class通用。19.A解析:在Myclass类中定义了两个同名函数show,其中一个是常 成员函数。在main函数中定义了两个对象myl, my2,其中对象my2是 常对象。这两个对象调用成员函数show时,通过对象myl调用的是没 有用,const修饰的一般成员函数,而通过对象my2调用的是const修饰 的常成员函数。20.AAo【解析】该题考查了函数参数传递的两种方式:引用传递和值传 递,引用传递时x和y会交换,而值传递时二者不交换,因此选10。21.CCo【解析】非成员函数一般都是友元函数,相比成员函数第一个操作 数是对象本身以this指针的形式隐含在参数列表中,非成员函数调用 必须显式的列出参数;选项C中没有MyClock类型,故选C。22 .A解析:作为一个算法,一般应该具有下列4个特征:(1)可行性, 即考虑到实际的条件能够达到一个满意的结果;(2)确定性,算法中的 每一个步骤都必须是有明确定义的,(3)有穷性,一个算法必须在有限 的时间内做完;(4)拥有足够的情报。23 .D解析:本题考查数学表达式的掌握,首先应转换为弧度,然后作 为COS函数的参数,求绝对值,最后是开方函数。考生需要掌握的是 常用的数学函数。24 .多态性多态性解析:面向对象系统包含了三个特征-封装性、继承性 和多态性,这三个特征可以很好的实现数据抽象,进行行为共享,完成 进化求解和描述一个系统的确定行为。25 .函数模板源代码数据类型函数模板rn源代码rn数据类型解析: 函数模板是一系列相关函数的模型或样板,这些函数的源代码形式相同, 只是所针对的数据类型不同。注意:声明一个函数的模板格式是: template < <模板形参表声明 > > < 函数声明>26 .事务型事务型解析:数据流图中有众多的加工,但必有一个加工是 起核心作用的,这样的加工称为中心加工。由数据流图导出结构图的关 键是找出中心加工。一般来说,中心加工有两种存在形态,即数据流图 有两种典型的结构形式:一种是变换型,另一种是事务型。27 .私有成员公有成员保护成员私有成员rn公有成员111保护成员 28.Time() h=O;m=O;s=O;)29 .加工加工 解析:SD方法实际上是面向数据流图的,即它的工作对象 实际上是在SA方法中形成的数据流图。因此,可以由数据流图采导出 结构图。另外,由数据流图导出结构图的关键是找出中心加工,而每个 加工则对应一个处理模块。30 .ACBEGFDACBEGFD解析:我们分4大步骤来推理:找到根结点:由于前序遍历首先访问根结点,那么前序遍历结果的第 一个结点肯定就是整个二叉树的根结点。前序遍历结果是DBACFEG, 可知D为二叉树的根结点。分出左、右子树:中序遍历中,访问根结点的次序为居中,先访问左 子树,再访问右子树。因此,在中序遍历的结果ABCDEFG中,以根结 点D为中间界线,前面的ABC在左子树,后面的EFG在右子树。分析左子树:首先确定左子树ABC的根点。在前序遍历中,B最靠 前,应该是ABC三个结点的根结点;在中序遍历中,A靠前,应该是 ABC三个结点的左子树,C为右子树。31 .数据结构数据结构32 .程序运行程序编译程序运行程序编译33 .二义性二义性34 .变换型变换型解析:典型的数据流类型有两种:变换型和事务型, 变换型是指信息沿输入通路进入系统,同时由外部形式变换成内部形式, 进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外 部形式离开软件系统;在很多软件应用中,存在某种作业数据流。它可 以引发一个或多个处理,这此处理能够完成液作业要求的功能,这种数 据流就叫做事务。35 .模块模块解析:矩形表示的是模块,箭头表示的是模块间的调用关 系。用带实心圆的箭头表示传递的是控制信息,用带空心圆的箭头表示 传递的是数据。36 .( 1 )“staticintn=O"应改为"staticintn;"。(2)“intC0:n;”应改为“intCO:n=0;(3)4tcout«c. n«endl;"应改为"cout«c->n<vendl;"。【解析】本题要在屏幕上输出两个字符,首先要静态变量初始化,第1 处应改为“staticintn;",第2处要给n赋值,第3处输出时引用c的对象,应改为"coutvvc->n<<endl;"37 .( 1)应改为"usingnamespacestd;"。(2)应改为"outl. open("l. txt", ios: binary I ios: app);(3)应改为“outl. put(si);,5o【解析】本题第1处的“usingstd;”是在程序中引入标准命名空间std, 对于C+ +中引入标准命名空间的格式,缺少namespace,所以第1处 的语句修改为“usingnamespacestd;第2处,调用成员函数open中,输入、输出方式是在ios类中定义的,所以“outl. open("l. txt", binary I app);”语句缺少类ios,即第2处的语句修改为 “outl. open("l. txt", ios: binary I ios: app)