欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【学历类职业资格】C++程序设计自考题模拟15及答案解析.doc

    • 资源ID:1367348       资源大小:82KB        全文页数:23页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【学历类职业资格】C++程序设计自考题模拟15及答案解析.doc

    1、C+程序设计自考题模拟 15 及答案解析(总分:100.00,做题时间:90 分钟)一、第部分 选择题(总题数:20,分数:20.00)1.下列不可以作为 C+标识符使用的是_(分数:1.00)A.usradfB._jsdhC.WhileD.6hole2.C+相对 C 语言重大改进之一,即从面向过程变成为面向对象,其主要原因是_(分数:1.00)A.允许函数重载,并允许设置默认参数B.规定函数说明符必须用原型C.增加了一些新的运算符D.引进了类和对象的概念3.C+预处理语句不包括_(分数:1.00)A.宏定义B.文件包含C.条件编译D.命名空间4.下列指针的定义和使用中,错误的是_(分数:1.

    2、00)A.int i; int*ptr= int*ptr; i=*ptr;C.int*ptr; ptr=0;D.int i=5; int*ptr; *ptr=i;5.使用指针时,用户给它分配地址使用的关键字是_(分数:1.00)A.newB.deleteC.externD.auto6.在类定义中,prirate、protected、public 关键词可以出现的次数为_(分数:1.00)A.任意多次B.public 至少出现一次C.至多一次D.至少一次7.下列对数组的操作错误的描述的是_(分数:1.00)A.reverse(a,a+len)是将数组元素反转排序B.copy(a,a+len,b)

    3、是将数组 a 的内容原样复制到数组 bC.sort(a,a+len)默认排序方式是降幂排序D.find(a,a+len,value)查找数组 a 的内容是否存在值为 value 的元素8.在重载函数中,有关其参数的描述中,正确的是_(分数:1.00)A.参数的个数、类型、顺序都相同,只是函数的返回值类型不同B.参数的顺序必须不同C.参数的类型必须不同D.参数的个数可能不同9.下列有关 C+中的对象的描述错误的是_(分数:1.00)A.对象是用来描述客观事物的一个实体B.对象由一组属性和对该属性进行操作的成员函数组成C.对象是 C+系统中的一个基本单位D.对象不可以表示世界中任何一个实体10.对

    4、于类定义 class A public: virtual void func1() void func2() ; class B: public A public: void func1()cout“class B func 1“endl; vitrual void func2()cout“class B: func 2“endl; ; 下面正确的叙述是。_(分数:1.00)A.A:func2()和 B:func1()都不是虚函数B.A:func2()和 B:func1()都是虚函数C.B:func1()是虚函数,而 A:func2()不是虚函数D.B:func1()不是虚函数,而 A:fun

    5、c2()是虚函数11.下列函数参数设计中,不改变原来实参的值的是_(分数:1.00)A.swap(string str1,string str2)B.swap(string *str1,string *str2)C.swap(string b=j;“,则执行“A x(1);“语句后,x.a 和x.b 的值分别为_(分数:1.00)A.1 和 0B.1 和 4C.4 和 0D.4 和 115.下列有关类性质的描述错误的是_(分数:1.00)A.类不可以不包括任何声明B.类的对象只能访问公有成员函数C.类必须在其成员使用之前先进行声明D.不完全声明的类不能实例化16.下列关于运算符重载的描述中,正

    6、确的是_(分数:1.00)A.C+中可以重载所有的运算符B.二元运算符重载为非成员函数时,参数表中有一个参数C.一元运算符只能作为成员函数重载D.运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符17.用户定义类 class 如下: class Base public: Base()cout1; ; 执行下列语句:Base a,b2,*p2;以后,程序的输出结果是_(分数:1.00)A.11B.1 11C.1111D.1111118.已知类 A,则定义一个复制构造函数的原型是_(分数:1.00)A.A:A(const A cin20.声明一个函数模板实现两个相同类型数加法,正确的声明

    7、是_(分数:1.00)A.add(T x,T y)B.T add(x,y)C.T add(T x,y)D.T add(T x,Ty)二、第部分 非选择题(总题数:20,分数:20.00)21.C+允许为同一个函数定义几个版本,从而使一个函数名具有多种功能,这称为 1。 (分数:1.00)22.在 C+程序设计中,istream 的直接基类是 1。 (分数:1.00)23.如果在定义结构时,将数据成员使用 1 关键字定义,则产生了封装性。 (分数:1.00)24.在 C+语言程序设计中,编程的单位是 1。 (分数:1.00)25.通过抽象归纳,C+可使用三要素 1、 2、 3 来描述对象。 (分

    8、数:1.00)26.下列程序段的输出结果是 1。 for(i=0, j=10, k=0; i=j; i+, j-=3, k=i+j); coutijk; (分数:1.00)27. 1(a,a+len)默认排序方式是降幂排序。 (分数:1.00)28.C+中只有两个布尔常量:true 和 1。 (分数:1.00)29.用 1 修饰传递参数,意思是通知函数,它只能使用参数而无权修改它。 (分数:1.00)30.定义 int 型变量 ab,int a=1,b=2;则表达式 a+-b 的值为 1。 (分数:1.00)31.C+是通过 1 实现的数据封装,及通过指定各成员的访问权限来实现的。 (分数:1

    9、.00)32.已知类 AB,则 AB 的复制构造函数的定义为 1。 (分数:1.00)33.虚函数未定义,留给派生类去定义的虚函数称为 1。 (分数:1.00)34.设在程序中使用如下语句申请一个对象数组: base *p=new base2 则在需要释放 p 指向的数组对象时,使用的语句是 1。 (分数:1.00)35.使用 1 可代替宏定义,以减少宏定义带来的许多不安全因素。 (分数:1.00)36.为了使派生类通过虚函数机制正确存取虚函数,使用空的虚函数可以保证 1 建立起一条存取路径。 (分数:1.00)37.以免与一般静态变量或对象混淆,静态数据成员初始化时,前面不加 1 关键字。

    10、(分数:1.00)38.已知类 AB,定义了一个构造函数“AB(int aa=0):a(aa)“,则定义该类的对象时,可以有 1 种不同的定义模式。 (分数:1.00)39.如果在类模板的定义中有一个静态数据成员,则在程序进行中会产生 1 静态变量。 (分数:1.00)40.对于下面定义的类 Base,请在函数 f()中添加对象成员把 n 的值修改为 50。 class Base public: Base(int x)n=x; void SetNum(int n1)n=n1; private: int n; ; void f() Base * ptr=new Base(45); 1 (分数:1

    11、.00)三、改错题(总题数:5,分数:20.00)41.#includeiostream using namespace std; int main 1 char c; cinc; if(c=“y“|c=“Y“) int a=1; else int a=0; cout“a=“aendl; (分数:4.00)42.#includeiostream using namespace std; class Base public: void fun(const char *txt, char *cap) cout“txt:“txt; cout“cap:“capendl; void fun(const

    12、char *txt, unsigned int type) cout“txt:“txt; cout“cap:“capendl; ; void main 1 Base my; my.fun(“Good“, 0); (分数:4.00)43.程序的输出结果如下,请找出程序的错误语句。 a=3 b=13 a=5 b=13 #includeiostream using namespace std; class T public: T(int x)a=x; b+=x;/数据成员初始化 void display(T c) cout“a=“c.a“/t“b=“c.bendl; private: int a;

    13、static int b; ; b=5; void main 1 TA(3), B(5); T:display(A); T:display(B); (分数:4.00)44.#includeiostream using namespace std; class A private: int den; int num; public: A(int d=0, int n=1):den(d), num(n) friend A void show 1coutden“/“num; ; friend A f1.num *=f2.num; return f1; void main 2 A fr(3, 4);

    14、fr+=A(5, 7); fr.show 3; coutendl; (分数:4.00)45.#includeiostream using namespace std; class A static int n; public: A 1n=1; A(int num)n=num; void print 2coutn; ; n=2; void main 3 A a, b(3); a.print 4; b.print 5; (分数:4.00)四、完成程序题(总题数:5,分数:20.00)46.完成下列程序填空,使其输出结果为 1001,1002,1003,1004 #includeiostream u

    15、sing namespace std; struct Data int n; double score; ; int main() Data a3=1001, 87, 1002, 72, 1003, 90; Data _;/声明结构指针 cout(p+)-nendl; cout_endl; coutp-n+endl; cout(*p).n+endl; (分数:4.00)_47.已知一个类 Base 的定义如下,其运行结果为:23 25 46 55 62 76 78 90 90,请完成以下程序。 #includeiostream using namespace std; class Base p

    16、rivate: int a10; int n; public: void SetA(int aa, int nn);/用数组 aa 初始化数据成员 a,用 nn 初始化数据成员 n int MaxA(); /从数组 a 中前 n 个元素中查找最大值 void SortA(); /采用选择排序的方法对数组 a 中前 n 个元素进行从小到大排序 void PrintA(); /依次输出数组 a 中的前 n 个元素,最后输出一个换行 ; void main() int a10=23, 78, 46, 55, 62, 76, 90, 25, 38, 42; Base x; x.SetA(a, 8);

    17、int _ ; _ ; x.PrintA(); coutmendl; (分数:4.00)_48.用户自定义类 A,完成程序填空,并使其输出为 10 5 10 5 15 5 #includeiostream using namespace std; class A public: int f1(); int f2(); void setx(int m)x=m; coutxendl; void sety(int n)y=n; coutyendl; int getx()return x; int gety()return y; private: int x, y; ; int A:f1()retur

    18、n x+y; int A:f2()return x-y; int main() A a; _; a.sety(5); couta.getx()“/t“a.gety()endl; cout_endl; (分数:4.00)_49.请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为 11,10 13,12 #includeiostream using namespace std; class A int a; public: A(int i=0)a=i; int Geta()return a; void show()coutaend; ; class B A a; int b; pub

    19、lic: B(int i, int j)_ void show()couta.Geta()“, “bendl; ; void main() B b(2)=B(10, 11), B(12, 13); for(int i=0; i2; i+) _ (分数:4.00)_50.完成下列程序填空,给定两个点,求两个点之问的距离,是题目输出结果为点(3,4)到点(4,5)的距离是:1.414。 #includeiostream #includecmath using namespace std; class Point public: Point(double x, double y) a=x; b=y;

    20、 cout“点(“a“, “b“)“; _ double d(Point private: double a, b; ; int main() Point p1(2, 3); cout“到“; Point p2(4, 5); cout“的距离是:“d(p1, p2)endl; (分数:4.00)_五、程序分析题(总题数:2,分数:10.00)51.#includeiostream using namespace std; class A public: A()cout“1“; A()cout“2“; ; class B: public A public: B()cout“3“; B()cout

    21、“4“; ; void main() B b; (分数:5.00)_52.给出下面程序的输出结果。 #includeiostream using namespace std; void main() int x=2, y=4, *p; p= cout*p“; *p=x+1; p= cout*p“; *p=y+2; coutx“ “yendl; (分数:5.00)_六、程序设计题(总题数:1,分数:10.00)53.定义一个 student 类,在该类定义中包括:一个数据成员 score(分数)及两个静态数据成员 total(总分)和学生人数 count;成员函数 scoretotalcount

    22、(double s)用于设置分数、求总分和累计学生人数;静态成员函数 sum()用于返回总分;静态成员函数 average()用于求平在 main 函数中,输入某班同学的成绩,并调用上述函数求全班学生的总分和平均分。 (分数:10.00)_C+程序设计自考题模拟 15 答案解析(总分:100.00,做题时间:90 分钟)一、第部分 选择题(总题数:20,分数:20.00)1.下列不可以作为 C+标识符使用的是_(分数:1.00)A.usradfB._jsdhC.WhileD.6hole 解析:考点 C+标识符 解析 C+标识符以大小写字母或下画线开始,由大小写字母、下划线、数字组成。所以 D

    23、选项以数字开头是错误的。2.C+相对 C 语言重大改进之一,即从面向过程变成为面向对象,其主要原因是_(分数:1.00)A.允许函数重载,并允许设置默认参数B.规定函数说明符必须用原型C.增加了一些新的运算符D.引进了类和对象的概念 解析:考点 面向过程和面向对象 解析 C 语言是结构化程序设计语言,有优有劣,C+是混合型语言,面向对象方法更彻底实现了结构化程序设计的思想。3.C+预处理语句不包括_(分数:1.00)A.宏定义B.文件包含C.条件编译D.命名空间 解析:考点 C+预处理程序 解析 C+预处理语句有三种,分别是宏定义、文件包含、条件编译。4.下列指针的定义和使用中,错误的是_(分

    24、数:1.00)A.int i; int*ptr= int*ptr; i=*ptr; C.int*ptr; ptr=0;D.int i=5; int*ptr; *ptr=i;解析:考点 动态分配内存 解析 A 选项定义变量 i,并将 i 的地址赋给指针 ptr,使其执行变量 i 的内存。B 项,定义了变量 i 和指针 ptr,指针未初始化就使用,所以有误。C 项,定义了指针 ptr,并使其指向内存地址赋值为 0;D 项,定义了指针 ptr,变量 i 并进行初始化,将 i 值赋给指针指向的内存。5.使用指针时,用户给它分配地址使用的关键字是_(分数:1.00)A.new B.deleteC.ext

    25、ernD.auto解析:考点 C+动态分配内存 解析 在使用指针时,如果不使用对象地址初始化指针,用户可以自己给它分配地址,申请方式如下:new 类型名size;6.在类定义中,prirate、protected、public 关键词可以出现的次数为_(分数:1.00)A.任意多次 B.public 至少出现一次C.至多一次D.至少一次解析:考点 类成员的访问权限 解析 访问权限可以反复使用,只不过经常把同一种访问权限的成员放在一起。7.下列对数组的操作错误的描述的是_(分数:1.00)A.reverse(a,a+len)是将数组元素反转排序B.copy(a,a+len,b)是将数组 a 的内

    26、容原样复制到数组 bC.sort(a,a+len)默认排序方式是降幂排序 D.find(a,a+len,value)查找数组 a 的内容是否存在值为 value 的元素解析:考点 泛型算法应用于普通数组 解析 reverse(a,a+len)是将数组元素反转排序;copy(a,a+len,b)是将数组 a 的内容原样复制到数组 b;sort(a,a+len)默认排序方式是升幂排序;find(a,a+len,value)查找数组 a 的内容是否存在值为 value 的元素。8.在重载函数中,有关其参数的描述中,正确的是_(分数:1.00)A.参数的个数、类型、顺序都相同,只是函数的返回值类型不同

    27、B.参数的顺序必须不同C.参数的类型必须不同D.参数的个数可能不同 解析:考点 函数重载 解析 实现重载,要求参数类型不同或者参数个数不同。对参数顺序和返回值没有要求。9.下列有关 C+中的对象的描述错误的是_(分数:1.00)A.对象是用来描述客观事物的一个实体B.对象由一组属性和对该属性进行操作的成员函数组成C.对象是 C+系统中的一个基本单位D.对象不可以表示世界中任何一个实体 解析:考点 面向对象程序设计的特点 解析 对象可以表示世界中任何一个实体,对象是用来描述客观事物的一个实体;对象是 C+系统中的一个基本单位;对象由一组属性和对该属性进行操作的成员函数组成。10.对于类定义 cl

    28、ass A public: virtual void func1() void func2() ; class B: public A public: void func1()cout“class B func 1“endl; vitrual void func2()cout“class B: func 2“endl; ; 下面正确的叙述是。_(分数:1.00)A.A:func2()和 B:func1()都不是虚函数B.A:func2()和 B:func1()都是虚函数C.B:func1()是虚函数,而 A:func2()不是虚函数 D.B:func1()不是虚函数,而 A:func2()是虚

    29、函数解析:考点 虚函数 解析 基类定义了虚函数,在派生类中只要有相同的函数(返回值、函数名、形参个数、类型相同),即使没有 virtual 修饰,该函数也是虚函数。基类 func1 是虚函数,与派生类 func1 相同,所以派生类func1 也是虚函数。func2 在基类中是普通函数,在派生类中是虚函数。11.下列函数参数设计中,不改变原来实参的值的是_(分数:1.00)A.swap(string str1,string str2) B.swap(string *str1,string *str2)C.swap(string b=j;“,则执行“A x(1);“语句后,x.a 和x.b 的值分

    30、别为_(分数:1.00)A.1 和 0 B.1 和 4C.4 和 0D.4 和 1解析:考点 构造函数 解析 构造函数调用时,参数的初始化顺序按照从左到右的顺序,所以 a 的值为 1,b 的值为默认值 0。15.下列有关类性质的描述错误的是_(分数:1.00)A.类不可以不包括任何声明 B.类的对象只能访问公有成员函数C.类必须在其成员使用之前先进行声明D.不完全声明的类不能实例化解析:考点 类的性质 解析 类的对象只能访问公有成员函数。类必须在其成员使用之前先进行声明,不完全声明的类不能实例化,否则会出现编译错误。类也可以不包括任何声明。16.下列关于运算符重载的描述中,正确的是_(分数:1

    31、.00)A.C+中可以重载所有的运算符B.二元运算符重载为非成员函数时,参数表中有一个参数C.一元运算符只能作为成员函数重载D.运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符 解析:考点 运算符重载 解析 运算符不能重载的有“.:*?”,所以 A 项错误。二元运算符作为友元运算符重载,参数表中应该有两个参数,所以 B 项错误。一元运算符既可以作为成员函数重载,也可以作为友元函数重载,所以 C 项错误。正确的是 D。17.用户定义类 class 如下: class Base public: Base()cout1; ; 执行下列语句:Base a,b2,*p2;以后,程序的输出结果

    32、是_(分数:1.00)A.11B.1 11 C.1111D.11111解析:考点 构造函数 解析 *p 只是声明,没有用 new 建立一个动态对象,即未调用构造函数初始化这个内存。a,b2总共是 3 个对象,调用 3 个构造函数,输出 111。18.已知类 A,则定义一个复制构造函数的原型是_(分数:1.00)A.A:A(const A。19.下面能正确进行字符串赋值操作的语句是_(分数:1.00)A.char*s; cin解析:考点 字符串赋值操作 解析 A 选项 char s5=“ABCDE“;“ABCDE“占用空间是 6 字节,超出 s 的长度了。B 选项 char s5=“A“, “B

    33、“, “C“, “D“, “E“;没有字符串结束的终结符,s 不能当字符串使用。C 选项 char *s=“ABCDE“; 正确。D 选项 cin i=j; i+, j-=3, k=i+j); coutijk; (分数:1.00)解析:3 1 4 考点 for 循环语句 解析 循环最后执行的操作是:k=i+j=3+1=4;结果输出 i 为 3,j 为 1,k 为 4。27. 1(a,a+len)默认排序方式是降幂排序。 (分数:1.00)解析:sort 考点 泛型算法应用于普通数组 解析 sort(a,a+len)默认排序方式是降幂排序。28.C+中只有两个布尔常量:true 和 1。 (分数

    34、:1.00)解析:false 考点 新的数据类型 解析 C+语言比 C 语言多了布尔型,其值有两个:true 和 false。29.用 1 修饰传递参数,意思是通知函数,它只能使用参数而无权修改它。 (分数:1.00)解析:const 考点 使用 const 保护数据 解析 C+为了提高系统的自身安全,用 const 修饰传递参数,意思是通知函数,它只能使用参数而无权修改它。30.定义 int 型变量 ab,int a=1,b=2;则表达式 a+-b 的值为 1。 (分数:1.00)解析:2 考点 运算符“+”“-” 解析 a+-b 即(a+)+(-b)=a+(b-1)=1+1=2。31.C+

    35、是通过 1 实现的数据封装,及通过指定各成员的访问权限来实现的。 (分数:1.00)解析:类 考点 数据封装 解析 C+是通过类实现的数据封装,及通过指定各成员的访问权限来实现的。32.已知类 AB,则 AB 的复制构造函数的定义为 1。 (分数:1.00)解析:AB(AB 考点 delete 运算符 解析 当使用 delete 释放动态对象数组时,必须告诉这个动态对象数组有几个元素对象,C+使用“”来实现,即语句:deletep。35.使用 1 可代替宏定义,以减少宏定义带来的许多不安全因素。 (分数:1.00)解析:const 考点 const 解析 因宏定义有许多不安全因素,对需要使用无

    36、参数宏的场合,应该尽量使用 const 代替宏定义。36.为了使派生类通过虚函数机制正确存取虚函数,使用空的虚函数可以保证 1 建立起一条存取路径。 (分数:1.00)解析:基类到派生类 考点 虚函数 解析 虚函数的作用是实现多态性,将接口与实现进行分离。使用空的虚函数可以保证基类到派生类建立起一条存取路径,使派生类通过虚函数机制正确存取虚函数。37.以免与一般静态变量或对象混淆,静态数据成员初始化时,前面不加 1 关键字。 (分数:1.00)解析:static 考点 静态成员 解析 静态数据成员必须在文件作用域的某个地方进行定义,进行初始化时,必须进行成员名限定,例如:int A:c=2。3

    37、8.已知类 AB,定义了一个构造函数“AB(int aa=0):a(aa)“,则定义该类的对象时,可以有 1 种不同的定义模式。 (分数:1.00)解析:2 考点 构造函数 解析 用户定义了一个有参的构造函数,当定义该类对象时,可以调用编译器自动生成的无参构造函数,也可以调用用户定义的有参构造函数。39.如果在类模板的定义中有一个静态数据成员,则在程序进行中会产生 1 静态变量。 (分数:1.00)解析:一个或者多个 考点 类模板与静态成员 解析 类模板允许有静态成员,它们是类模板的实例化类的静态成员。对于每个类模板的每一个实例化类,其所有的对象共享其静态成员。所以静态成员的个数,取决于有多少

    38、个实例化类。40.对于下面定义的类 Base,请在函数 f()中添加对象成员把 n 的值修改为 50。 class Base public: Base(int x)n=x; void SetNum(int n1)n=n1; private: int n; ; void f() Base * ptr=new Base(45); 1 (分数:1.00)解析:ptr-SetNum(50); 考点 对象指针 解析 类对象的指针可以通过“-”运算符访问对象的成员,所以 ptr-SetNum(50);。三、改错题(总题数:5,分数:20.00)41.#includeiostream using names

    39、pace std; int main 1 char c; cinc; if(c=“y“|c=“Y“) int a=1; else int a=0; cout“a=“aendl; (分数:4.00)解析:int a=1; int a=0;变量 a 的定义语句位置有误 考点 对象的定义和初始化 解析 变量 a 的定义不应该放在 if-else 语句体内,说明语句和执行语句的执行时机不同。变量说明要求在编译时定义存储空间。而 if-else 是执行语句,程序运行后才执行。42.#includeiostream using namespace std; class Base public: void

    40、fun(const char *txt, char *cap) cout“txt:“txt; cout“cap:“capendl; void fun(const char *txt, unsigned int type) cout“txt:“txt; cout“cap:“capendl; ; void main 1 Base my; my.fun(“Good“, 0); (分数:4.00)解析:my.disp(“good“, 0)有误。 考点 函数重载 解析 成员函数 disp -|_|-的重载将产生二义性。因为将调用成员函数my.disp(“good“, 0)时,系统无法确定第二个实参是空字

    41、符串 NULL 还是整数 0。43.程序的输出结果如下,请找出程序的错误语句。 a=3 b=13 a=5 b=13 #includeiostream using namespace std; class T public: T(int x)a=x; b+=x;/数据成员初始化 void display(T c) cout“a=“c.a“/t“b=“c.bendl; private: int a; static int b; ; b=5; void main 1 TA(3), B(5); T:display(A); T:display(B); (分数:4.00)解析:b=5; 语句有错,应该改为

    42、 int T:b=5; 考点 类的静态成员 解析 静态数据成员只能说明一次,如果在类中仅对静态数据成员进行声明,则必须在文件作用域的某个地方定义。在进行初始化时,必须进行成员名限定,即 int T:b=5;。44.#includeiostream using namespace std; class A private: int den; int num; public: A(int d=0, int n=1):den(d), num(n) friend A void show 1coutden“/“num; ; friend A f1.num *=f2.num; return f1; voi

    43、d main 2 A fr(3, 4); fr+=A(5, 7); fr.show 3; coutendl; (分数:4.00)解析:friend A class A static int n; public: A 1n=1; A(int num)n=num; void print 2coutn; ; n=2; void main 3 A a, b(3); a.print 4; b.print 5; (分数:4.00)解析:n=2;语句有误 考点 静态成员 解析 如果在类中仅对静态数据成员进行声明,则必须在文件作用域的某个地方进行定义。在进行初始化时,必须进行成员名限定,则题目应该改为 int A:n=2;。四、完成程序题(总题数:5,分数:20.00)46.完成下列程序填空,使其输出结果为 1001,1002,1003,1004 #includeiostream using namespace std; struct Data int n; double score; ; int main() Data a3=1001, 87, 1002, 72, 1003, 90; Data _;/声明结构指针 cout(p+)-nendl; cout_endl; coutp-n+endl; cout(*p).n+endl; (分数:4.00)_


    注意事项

    本文(【学历类职业资格】C++程序设计自考题模拟15及答案解析.doc)为本站会员(eastlab115)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开