题目详情
当前位置:首页 > 职业培训考试
题目详情:
发布时间:2023-10-22 21:27:46

[填空题]有如下程序: #include<iostream> using namespace std; class Base{ int b; public: Base(int i){b=i;} void disp( ){cout<<"Base:b="<<b<<’’;} }; class Basel:virtual public Base{ public: Basel(int i):Base(i){ } f; class Base2:virtual public Base{ public: Base2(int i):Base(i){ } }; class Derived:public Base2.public Basel{ int d; public: Derived(inl i,int j):Basel(j),Base2(J),______{d=i;} void disp( ){cout<<"Derived:d="<<d<<":} f; int main( ){ Derived objD(1,2);objD.disp( ); objD.Basce::disp( ); objD.Bascel::disp( ); objD.Basce2::disp( ); return 0; 请将程序补充完整,使程序在运行时输出: Derived:d=1 Base:b:2 Base:b=2 Base:b=2

更多"有如下程序: #include<iostream> usi"的相关试题:

[单项选择]有如下程序: #include<iostream> using namespace std; class Demo { public: Demo( ){ cout<<"default constructor/n";} Demo(const Demo & x){ cout<<"copy constructor/n":} }; Demo userCode(Demo b){DemoC(b);return c;} int main( ) { Demo a,d; cout<<"calling userCode( )/n"; d=userCode(a); return 0; } 执行上面程序的过程中,构造函数Demo( )和Demo(const Demo &x)被调用的次数分别是
A. 1和1
B. 1和2
C. 2和3
D. 2和4
[单项选择]设有如下程序:
#include <iostream>
using namespace std;
class A

public:
int i;
display( )

cout<<"class A/n";

;
class B

public:
int i;
display( )

cout<<"class B/n";

;
class C : public A, public B

int j;
public:
int i;
show ( )

j = i * i;
display( );

;
int main( )

C demo;
demo.show( );
return O;

则主程序运行时将( )。
A. 因为变量i的重复定义而报错
B. 因为对象demo间接调用display()函数时产生二义性而报错
C. 因为类定义的语法错误而不能运行
D. 没有语法错误,能够正常输出结果
[填空题]若有如下程序段: #include<iostream> using namespace std; int main( ) { char *p="abcdefgh",*r; long *q; q=(long*)p;q++; r=(char*)q; cout<<r<<endl; return 0; } 该程序的输出结果是 【10】
[单项选择]如下程序的输出结果是 #include<iostream> using namespace std; class A{ public: virtual void f( ){tout<<1;} void g( ){cout<<2;} }; class B:public A{ public: virtual void f( ){cout<<3;} void g( ){cout<<4;} }; void show(A&A) {a.f( );a.g( );} int nlain( ){ B b; show(B) ; return 0; }
A. 12
B. 34
C. 14
D. 32
[单项选择]有以下程序 #include <iostream> using namespace std; static int days []={31,28.31,30,31,30,31,31,30,31,30,31}; class date { private: int month, day, year: public: date (int m, int d, int y { month = m; day = d; year = y; } date{} {} void disp {) { cout <<year<<" - "<<month<< "- "<<day<<end1; } date operator+(int day) { date dt = *this: day += dt.day; while { day > days[ dt.month - 1 ] ) { day -= tays[ dt.month - 1 ]; if ( ++dt.month == 13 { dt.month = 1; dt.yeare++; } } dr. day = day; return dt; } }; int main( ) { date d1( 6, 20, 2004 ), d2; d2.= d1 + 20; d2.disp ( ); return 0; } 执行后的输出结果是
A. 2004-7-10
B. 2004-6-20
C. 2004-7-20
D. 程序编译时出错

我来回答:

购买搜题卡查看答案
[会员特权] 开通VIP, 查看 全部题目答案
[会员特权] 享免全部广告特权
推荐91天
¥36.8
¥80元
31天
¥20.8
¥40元
365天
¥88.8
¥188元
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《购买须知》
立即支付 系统将自动为您注册账号
请使用微信扫码支付

订单号:

截图扫码使用小程序[完全免费查看答案]
请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码