1、国家计算机二级(C+)95 及答案解析(总分:460.00,做题时间:120 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.有以下程序 main() union char ch2; int d; s; s.d=0x4321; printf(“%x,%x/n“,s.ch0,s.ch1); 在 16 位编译系统上,程序执行后的输出结果是_。 (分数:2.00)A.21,43B.43,21C.43,00D.21,002.有如下程序 #include #include using namespace std; int main() countPrint(
2、); delete ptr; return 0; ) 程序的输出结果是 (分数:2.00)A.IBB.iDC.2BD.2D4.对表达式 for(表达式 1;表达式 3)可理解为( )。(分数:2.00)A.for(表达式 1;0;表达式 3)B.for(表达式 1;1;表达式 3)C.for(表达式 1;表达式 3;)D.for(;表达式 3)5.有以下类定义 classPoint public: Point(int x0,int y0)_xx;_yy; void Move (int xOff,int yOff _x xOff;_yyOff void Print() const cout(_x
3、,_y)endl; private: int_x_y; ; 下列语句中会发生编译错误的是【 】 (分数:2.00)A.Pointpt;pt;Print();B.const Point pt;pt.Print();C.Pointpt;pt.Move(1,2);D.const Point pt;pt.Move(1,2);6.下列描述正确的是( )。(分数:2.00)A.表示 m n 为 true 或 m n 为 true 的表达式为 m n m nB.switch 语句结构中必须有 default 语句C.if 语句结构中必须有 else 语句D.如果至少有一个操作数为 true,则包含“”运算符
4、的表达式为 true7.下列语句不能够用于打开 C 根目录下文件 testtxt 的语句是( )。(分数:2.00)A.3B.6C.10D.208.有以下程序: #include main() FILE *fp; int i,k,n; fp=fopen(“data.dat“,“w+“); for(i=1;iA.0 0B.123 45C.1 4D.1 29.设有数组定义:chararray:“China“;,则数组 array 所占的空间为( )。(分数:2.00)A.4 个字节B.5 个字节C.6 个字节D.7 个字节10.下列符号中能够作为 C+标识符的是(分数:2.00)A.constB.
5、2aC.-shapeD.-count11.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是( )。(分数:2.00)A.6B.7C.8D.912. 下列选项中不符合良好程序设计风格的是【 】(分数:2.00)A.源程序要文档化B.数据说明的次序要规范化C.避免滥用 goto 语句D.模块设计要保证高耦合、高内聚13.以下函数调用语句中含有参数的个数是( )。 excc(v1,v2),(v2,v3,v4),v6); (分数:2.00)A.3B.4C.5D.614.关于静态数据成员的描述中正确的是( )。(分数:2.00)A.“=a+b+c/3”B.“(a+b+c)/3”C.“=(a+
6、b+c)/3”D.以上表达式均错15.下面程序的运行结果是( )。 #ncludeiostream.h int fun(inta,int n) int result=1; for(int i=1;in;+) result=result*ai; return result; void main( ) int a3 =3,4,5; coutfun(a,3)endl; (分数:2.00)A.2B.0C.-2D.116.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和【 】(分数:2.00)A.编码设计B.测试阶段C.运行阶段D.物理设计17.对于一个类定义,下列叙述中错误的是(分数:2.00)
7、A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数B.如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数18.函数 fun 的返回值是( )。 fun(char*a,char*b) intnum=0,n=0; while(*(a+num)!=/0)num+; while(bn)*(a+num)=bn;num+;n+; returnnum; (分数:2.00)A.字符串 a 的长度B.字符串 b 的长度C.字符串 a 和 b 的长度之差
8、D.字符串 a 和 b 的长度之和19.下列程序的输出结果是( )。 # include iostreamh int min( int a,int b) if(a b)return a; else return b; return 0 void main ( ) cout min(1,min(2,3) endl; (分数:2.00)A.15B.25C.35D.4520.设有如下关系表 (分数:2.00)A.T=RSB.T=RSC.T=RSD.T=R/S21.软件调试的目的是(分数:2.00)A.发现错误B.改正错误C.改善软件的性能D.验证软件的正确性22.在深度为 7 的满二叉树中,叶子结点
9、的个数为_。 (分数:2.00)A.32B.31C.64D.6323.数据库设计的根本目标是要解决_。 (分数:2.00)A.数据共享问题B.数据安全问题C.大量数据存储问题D.简化数据维护24.以下哪个不是 C+语言中的有效标识符?(分数:2.00)A.34aB._ABC.A_BD.A2525.下列运算符中,不能被重载的是(分数:2.00)A. ; void main( ) A a,b3,* c; C=b; cout i endl; (分数:2.00)A.该宏组由 macro1 和 macro2 两个宏组成B.宏 macor1 由两个操作步骤(打开窗体、关闭窗体)组成C.宏 macro1 中
10、 OpenForm 命令打开的是教师自然情况窗体D.宏 macro2 中 Close 命令关闭了教师自然情况和教师工资两个窗体28.以下程序的功能是进行位运算: main() unsigned char a,b; a=73; b=4 printf(“%d %d/n“,a,b); 程序运行后的输出结果是_。 (分数:2.00)A.4 3B.7 3C.7 0D.4 029.在语句 cindata;中,cin 是(分数:2.00)A.C+的关键字B.类名C.对象名D.函数名30.下列叙述中正确的是(分数:2.00)A.程序执行的效率与数据的存储结构密切相关B.程序执行的效率只取决于程序的控制结构C.
11、程序执行的效率只取决于所处理的数据量D.以上三种说法都不对31.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是( )。(分数:2.00)A.showbase( )和 eof( )B.showpoint( )和 eof( )C.showpoint( )和 bad( )D.showpoint( )和 good( )32.有如下定义: int a51,3,5,7,9, * p=a;下列表达式中不能得到数值 5 的是(分数:2.00)A.a2B.a3C.*(p+2)D.*p+433.有如下程序: #include“iostreamh“ void main( ) int x=1,a=0,b
12、=0; switch(x) case 0:b+; case 1:a+; case 2:a+;b+; cout “a=“ a “,“ “b=“ b; 该程序的输出结果是( )。 (分数:2.00)A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=234.下面程序的运行结果为( )。 #includeiostreamh void main( ) char a=,3; switch(a) case3:cout “3“; case2:cout “2“;break; default:cout “1“; (分数:2.00)A.switch(a+b);B.switch(a+b*3.0)C
13、.switch aD.switch(ab)35.下列有关继承和派生的叙述中,正确的是_。(分数:2.00)A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类二、填空题(每空 2 分,共 30 分)(总题数:13,分数:390.00)36.C+程序是从 1 函数开始执行的。(分数:30.00)填空项 1:_37.下面程序的输出结果是 1。 #includeiostream.h void main2 int a6=1,2,3,4,5,6; f
14、or(int i=0;i填空项 1:_38.语句 cout /n还可表示为 1。(分数:30.00)填空项 1:_39. 1 是 C+语言程序的入口。(分数:30.00)填空项 1:_40.表达式 xoperator+(yoperator+(0)还可以写成 1。(分数:30.00)填空项 1:_41.以下程序的结果为 1。 #include”iostreamh” templatetypename T T total(T * data) T s=0; while( * data) s+= * data +; return s; int main2 int x = 2,4,6,8,0,12,14,
15、16,18 ; cout total(x); return 0; cout end1; (分数:30.00)填空项 1:_42.指针数组是由 1 构成的数组。 (分数:30.00)填空项 1:_43.下面程序的运行结果是 1 和 2。 #includeiostreamh #define N 10 #define s(x)x * x #define f(x)(x * x) void main3 int i1,i2; i1=1000/s(N);i2=1000/f(N); cout i1 “ “ i2; (分数:30.00)填空项 1:_44.要采用“cin,tout”进行输入输出时,必须包含的头文
16、件是 1。(分数:30.00)填空项 1:_45.以下程序的输出结果是 1。 #includeiostreamh unsignedfun(unsignednum) unsignedk=1; do k * =num%10;num/=10;while(num); returnk; voidmain( ) unsignedn=26; coutfun(n)endl; (分数:30.00)填空项 1:_46.下列程序的输出结果是 1 #includeiostream using namespace std; templatetypenameT Tfun(Ta,TB) return (aB) ?a:b;
17、int main 2 coutfun(3,6),fun(3.14F,6.28F)end1; return 0; (分数:30.00)填空项 1:_47.开发一个 C+语言程序的步骤通常包括编辑、 1、链接、运行和调试。(分数:30.00)填空项 1:_48.以下程序的输出结果是 1。 #includeiostreamh void main2 int a=0; a+ =(a=8); cout a; (分数:30.00)填空项 1:_国家计算机二级(C+)95 答案解析(总分:460.00,做题时间:120 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)
18、1.有以下程序 main() union char ch2; int d; s; s.d=0x4321; printf(“%x,%x/n“,s.ch0,s.ch1); 在 16 位编译系统上,程序执行后的输出结果是_。 (分数:2.00)A.21,43 B.43,21C.43,00D.21,00解析:此题考核的是共用体的特征。int 类型变量和字符数组 ch 共用两个字节的相同的存储单元,通常 ch0位于低字节,ch1位于高字节,所以 s.ch0=21,s.ch1=43。2.有如下程序 #include #include using namespace std; int main() coun
19、tPrint(); delete ptr; return 0; ) 程序的输出结果是 (分数:2.00)A.IBB.iD C.2BD.2D解析:派生类的构造函数首先要调用基类的构造函数,对基类成员初始化,然后对派生类中新增的成员初始化。 4.对表达式 for(表达式 1;表达式 3)可理解为( )。(分数:2.00)A.for(表达式 1;0;表达式 3)B.for(表达式 1;1;表达式 3) C.for(表达式 1;表达式 3;)D.for(;表达式 3)解析:本题中,若要保证 for 表达式能正常进行,首先要保证第 2 个表达式的条件判断值应该为真,从而保证循环进行。5.有以下类定义 c
20、lassPoint public: Point(int x0,int y0)_xx;_yy; void Move (int xOff,int yOff _x xOff;_yyOff void Print() const cout(_x,_y)endl; private: int_x_y; ; 下列语句中会发生编译错误的是【 】 (分数:2.00)A.Pointpt;pt;Print();B.const Point pt;pt.Print();C.Pointpt;pt.Move(1,2);D.const Point pt;pt.Move(1,2); 解析:本题考核常对象、常数据成员与常成员函数。
21、如果将一个对象说明为常对象,则通过该常对象只能调用它的常成员函数,不能调用其他的成员函数,D 选项中对象 pt 为常对象,而成员函数 Move()不是常成员函数,所以这样调用会发生编译错误。6.下列描述正确的是( )。(分数:2.00)A.表示 m n 为 true 或 m n 为 true 的表达式为 m n m nB.switch 语句结构中必须有 default 语句C.if 语句结构中必须有 else 语句D.如果至少有一个操作数为 true,则包含“”运算符的表达式为 true 解析:本题主要考查 C+语言的基本语法,选项 A)中应该为 mn|mn;选项 B)中 default 语句
22、可有可无;选项 C)中 if 可以单独作为一条语句,不必须和 else 搭配。7.下列语句不能够用于打开 C 根目录下文件 testtxt 的语句是( )。(分数:2.00)A.3B.6C.10D.20 解析:由于大多数监听器接口都包含了我们可能不需要的方法。使用适配器类作为父类,可避免为实现接口而必须实现一些空方法的麻烦。8.有以下程序: #include main() FILE *fp; int i,k,n; fp=fopen(“data.dat“,“w+“); for(i=1;iA.0 0B.123 45C.1 4D.1 2 解析:语句“fprintf(fp,“%d “,i);”的作用是
23、将变量 i 的值按“%d”的格式输出到 fp 指向的文件上;“rewind(fp)” 的作用是使指针重新返回文件的开头;“fscanf(fp,“%d%d“,+) result=result*ai; return result; void main( ) int a3 =3,4,5; coutfun(a,3)endl; (分数:2.00)A.2B.0 C.-2D.1解析:单目的+运算优先级高于双目的+运算,不过+的结合性是自右向 左的,而+是自左至右的,所以上面的两个表达式都是先计算 a+b 的值之后,a 再自加 1。16.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和【 】(分数:2.
24、00)A.编码设计B.测试阶段C.运行阶段D.物理设计 解析:数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开发分解成目标独立的若干阶段。它们是:需求分析阶段、概念设计阶段、逻辑设计阶段和物理设计阶段。17.对于一个类定义,下列叙述中错误的是(分数:2.00)A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数B.如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数 C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数解析:18.函数 fun 的返回值是( )。 fun(cha
25、r*a,char*b) intnum=0,n=0; while(*(a+num)!=/0)num+; while(bn)*(a+num)=bn;num+;n+; returnnum; (分数:2.00)A.字符串 a 的长度B.字符串 b 的长度C.字符串 a 和 b 的长度之差D.字符串 a 和 b 的长度之和 解析:本题首先通过第一个 while 循环计算字符串 a 的长度,再通过第二个循环,将字符串 a 和 b 相连,最后返回连接后的总长度。 19.下列程序的输出结果是( )。 # include iostreamh int min( int a,int b) if(a b)return
26、 a; else return b; return 0 void main ( ) cout min(1,min(2,3) endl; (分数:2.00)A.15B.25C.35 D.45解析: 在调用过程时,一般主调与被调过程之间有数据传递,即将主调过程的 实参传递给被调用的过程,完成实参与形参的结合,然后执行被调过程,在 Visual Basic 中,实参与形参的结合有两种方式:即传址与传值。这两种方法的特点如下: 传址的结合过程是,当调用一个过程是,它将实参的地址传给形参,在被调用的过程 中,对形参的任何操作都变成了对相应实参的操作,因此实参的值会随形参的改变而改变。 传值的结合过程是,
27、当调用一个过程时,系统将实参的值赋值给形参并断开了联系, 被调用过程中的操作时在形参自己的存储单元中进行的,当过程调用结束时,这些形参 所占用的存储单元也同时被释放,因此在过程中对形参的任何操作不会影响实参。而题 中被调过程 Proc 中有两个形参,其中第一个形参 n 为传址方式,第二个形参 m 为传值方 式。主调过程分别把实参 x、y 传递给 Proc,所以当过程调用结束后,实参 x 的值应随着被 调过程变化而变化,而实参 y 值在主调函数中始终不变,所以输出 y 的值仍为 29;在被调 过程中 “n = n Mod l0 “被调用时,相当于“x=x Mod l0”,所以 x 的值最终为 6
28、。 20.设有如下关系表 (分数:2.00)A.T=RSB.T=RS C.T=RSD.T=R/S解析:从图中可以看出,关系 T 是关系 R 和关系 S 的简单合并,而合并的符号为,所以答案为 T=RS。21.软件调试的目的是(分数:2.00)A.发现错误B.改正错误 C.改善软件的性能D.验证软件的正确性解析:软件测试的目的是为了发现错误,而软件调试的目的则是要改正错误。22.在深度为 7 的满二叉树中,叶子结点的个数为_。 (分数:2.00)A.32B.31C.64 D.63解析:所谓满二叉树是指这样的一种二叉树:除最后一层外,每层上的所有结点都有两个子结点。这就是 说,在满二叉树中,每一层
29、上的结点数都达到最大值,即在满二叉树的第 K 层上有 2 的(k-1)次方个结点,且深度为 m 的满二叉树有 2(m 次方)-1 个结点。树的最大层次称为树的深度。本题中深度为 7,故叶子结点数为 2 的(6 次方)=64。23.数据库设计的根本目标是要解决_。 (分数:2.00)A.数据共享问题 B.数据安全问题C.大量数据存储问题D.简化数据维护解析:由于数据的集成性使得数据可为多个应用所共享,特别是在网络发达的今天,数据库与网络的结合 扩大了数据关系的应用范围。数据的共享本身又可极大地减少数据冗余性,不仅减少了不必要的存储空间,更为重要的是可以避免数据的不一致性。因此,数据库设计的根本目
30、标是要解决数据共享问题。24.以下哪个不是 C+语言中的有效标识符?(分数:2.00)A.34a B._ABC.A_BD.A25解析:本题考查 c+语言标识符规则。在 C+语言中,标识符只能由数字,字母,下划线组成,并且第一个字符不能是数字。注意:选项 A)是以数字开始的。25.下列运算符中,不能被重载的是(分数:2.00)A. ; void main( ) A a,b3,* c; C=b; cout i endl; (分数:2.00)A.该宏组由 macro1 和 macro2 两个宏组成B.宏 macor1 由两个操作步骤(打开窗体、关闭窗体)组成C.宏 macro1 中 OpenForm
31、 命令打开的是教师自然情况窗体D.宏 macro2 中 Close 命令关闭了教师自然情况和教师工资两个窗体 解析:表格式报表是以整齐的行列形式显示记录数据,通常一行显示一条记录、一页显示多行记录。28.以下程序的功能是进行位运算: main() unsigned char a,b; a=73; b=4 printf(“%d %d/n“,a,b); 程序运行后的输出结果是_。 (分数:2.00)A.4 3 B.7 3C.7 0D.4 0解析:C 语言提供六种位运算符,按优先级由高到低的顺序分别为:取反()左移(data;中,cin 是(分数:2.00)A.C+的关键字B.类名C.对象名 D.函
32、数名解析:在语句 cindata;中,cin 为对象名。30.下列叙述中正确的是(分数:2.00)A.程序执行的效率与数据的存储结构密切相关 B.程序执行的效率只取决于程序的控制结构C.程序执行的效率只取决于所处理的数据量D.以上三种说法都不对解析:一种数据的逻辑结构根据需要可以表示成多种存储结构,而采用不同的存储结构,其数据处理的效率是不同的。因此,在进行数据处理时,选择合适的存储结构是很重要的。31.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是( )。(分数:2.00)A.showbase( )和 eof( )B.showpoint( )和 eof( ) C.showpoi
33、nt( )和 bad( )D.showpoint( )和 good( )解析:表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是 showpoint( )和 eof( )。 32.有如下定义: int a51,3,5,7,9, * p=a;下列表达式中不能得到数值 5 的是(分数:2.00)A.a2B.a3 C.*(p+2)D.*p+4解析:33.有如下程序: #include“iostreamh“ void main( ) int x=1,a=0,b=0; switch(x) case 0:b+; case 1:a+; case 2:a+;b+; cout “a=“ a “,“ “
34、b=“ b; 该程序的输出结果是( )。 (分数:2.00)A.a=2,b=1 B.a=1,b=1C.a=1,b=0D.a=2,b=2解析:本题考查关于 switch 语句。该题目的关键是要搞清楚该程序执行了哪几条语句。由于 x 的值等于 1,所以 switch 结构中,程序从 case 1 后面的语句开始执行,又因为 case 1 后面的语句没有以 break 结束,所以程序要继续往下执行 case 2 后面的语句。所以,该程序共执行了这三条语句:a+;a+;b+;,因此,变量 a 和 b 最后的值应该为 2 和 1。34.下面程序的运行结果为( )。 #includeiostreamh v
35、oid main( ) char a=,3; switch(a) case3:cout “3“; case2:cout “2“;break; default:cout “1“; (分数:2.00)A.switch(a+b);B.switch(a+b*3.0)C.switch aD.switch(ab) 解析:此题主要考查 if-else 的使用,当 if 语句中的条件为真时执行后的 语句,并跳过 else 执行下面的语句;当条件为假时执行 else 后的语句。35.下列有关继承和派生的叙述中,正确的是_。(分数:2.00)A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员B
36、.派生类的成员函数可以访问基类的所有成员C.基类对象可以赋值给派生类对象D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类解析:二、填空题(每空 2 分,共 30 分)(总题数:13,分数:390.00)36.C+程序是从 1 函数开始执行的。(分数:30.00)填空项 1:_ (正确答案:main)解析:所有的 C+语言程序都是从 main 函数刀:始执行,而普通函数的存在是为了 简化 main 函数的复杂程度。 37.下面程序的输出结果是 1。 #includeiostream.h void main2 int a6=1,2,3,4,5,6; for(int i=0;i填空项
37、 1:_ (正确答案:1 2 3 4 5)解析:本题考查的是考生使用简单循环输出数组元素的能力,因为结束条件是 i38.语句 cout /n还可表示为 1。(分数:30.00)填空项 1:_ (正确答案:cout end1;)解析:“/n”表示换行,end1 也可表示换行。end1 和“/n”可以通用。39. 1 是 C+语言程序的入口。(分数:30.00)填空项 1:_ (正确答案:main-|_|-函数)解析:考查 C+语言的基本概念。main-|_|-是 C+语言的入口函数。40.表达式 xoperator+(yoperator+(0)还可以写成 1。(分数:30.00)填空项 1:_
38、(正确答案:x+y+或 x+(y+))解析:因为 yoperator+(0)是对成员 y 重载运算符,所以是成员重载,在参数表中又有一个参数,所以是重载后缀+,所以是 x+(y+)。41.以下程序的结果为 1。 #include”iostreamh” templatetypename T T total(T * data) T s=0; while( * data) s+= * data +; return s; int main2 int x = 2,4,6,8,0,12,14,16,18 ; cout total(x); return 0; cout end1; (分数:30.00)填空项
39、 1:_ (正确答案:20)解析:本题考查模板函数的运用。要理解 * data 的含意。 42.指针数组是由 1 构成的数组。 (分数:30.00)填空项 1:_ (正确答案:指针)解析:如果一个数组中的每个元素均为指针类型,即由指针变量构成的数组,这种数组称之为指针数组,它是指针的集合。 43.下面程序的运行结果是 1 和 2。 #includeiostreamh #define N 10 #define s(x)x * x #define f(x)(x * x) void main3 int i1,i2; i1=1000/s(N);i2=1000/f(N); cout i1 “ “ i2;
40、 (分数:30.00)填空项 1:_ (正确答案:1000)解析:对于 define 宏定义语句,系统会在编译前进行替换。本题替换过程如下: i1=1000/s(N) i1=1000/s(10) i1=1000/10*10 i1=1000 i2=1000/f(N) i2=1000/f(10) i2=1000/(10*10) i2=10 44.要采用“cin,tout”进行输入输出时,必须包含的头文件是 1。(分数:30.00)填空项 1:_ (正确答案:iostreamh)解析:iostreamh 是与输入输出有关的类文件。 45.以下程序的输出结果是 1。 #includeiostreamh
41、 unsignedfun(unsignednum) unsignedk=1; do k * =num%10;num/=10;while(num); returnk; voidmain( ) unsignedn=26; coutfun(n)endl; (分数:30.00)填空项 1:_ (正确答案:12)解析:函数有一个形参 num,循环前变量 k 置 1,循环中,表达式 num%10 是取 num 的个位,将 num 的个位值累乘于 k 中,然后 num 除以 10。循环直至 num 为。结束,这是 逐一求出 num 十进制表示的各位数字,并累乘于变量 k 的循环。函数最后返回 k。函数 fu
42、n 的功能是求整数的各位十进数字积。 46.下列程序的输出结果是 1 #includeiostream using namespace std; templatetypenameT Tfun(Ta,TB) return (aB) ?a:b; int main 2 coutfun(3,6),fun(3.14F,6.28F)end1; return 0; (分数:30.00)填空项 1:_ (正确答案:3,3.14)解析:本题考核模板函数的使用。C编译系统将根据实参表中的实参的类型来确定函数的形参列表中的类型。函数 fun 的功能是返回两者中较小的值,函数调用 fun(3,6)返回的值为 3,函数调用fun(3.14F,6.28F)返回的值为 3.14。47.开发一个 C+语言程序的步骤通常包括编辑、 1、链接、运行和调试。(分数:30.00)填空项 1:_ (正确答案:编译)解析:c+语言是以编译方式实现的高级语言,C+语言程序的实现,必须要使用 某种 C+语言的编译器对程序进行编译。 48.以下程序的输出结果是 1。 #includeiostreamh void main2 int a=0; a+ =(a=8); cout a; (分数:30.00)填空项 1:_ (正确答案:16)解析:解答本题的关键是要分析清楚表达式 a+=(a=8)中,a 的值已经被赋为 8,而不是 0。