搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友shmilyfan 发布时间:2022-01-06
[主观题]

阅读以下说明和C++程序代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】 在下面的C++代码中

阅读以下说明和C++程序代码,将应填入(n)处的字句写在答题纸的对应栏内。

【说明】

在下面的C++代码中,类SalesTicket能够完成打印票据正文的功能,类HeadDec- orator与FootDecorator分别能够完成打印票据的台头和脚注的功能。

已知该程序运行后的输出结果如下所示,请填补该程序代码中的空缺。

这是票据的台头!

这是票据正文!

这是票据的脚注!

---------------

这是票据的台头!

这是票据的脚注!

【C++程序代码】

#include

using namespace std;

class SalesTicket {

public:

(1) printTicket() { cout << " 是票据正文!" << endl;}

class Decorator : public SalesTicket{

SalesTicket *ticket;

public:

Decorator(SalesTicket *t){ ticket = t; }

void printTicket(){

if(ticket != NULL)

ticket->printTicket();

}

};

class HeadDecorator : public Decorator{

public:

HeadDecorator(SalesTicket *t): (2) { }

void printTicket() {

sour << "这是票据的台头!" << endl;

Decorator::printTicket();

}

};

class FootDecorator :public Decorator{

public:

FootDecorator(SalesTicket *t): (3)

void printTicket() {

Decorator::printTicket();

cout << "这是票据的脚注!" << endl;

}

};

void main(void) {

SalesTicket t;

FootDecorator f(&t);

HeadDecorator h((4) );

h.printTicket();

cout << "-------------------------"<< endl;

FootDecorator a(NULL);

HeadDecorator b((5) );

b.printTicket();

}

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
查看官方参考答案
更多“阅读以下说明和C++程序代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】 在下面的C++代码中”相关的问题
第1题
阅读以下说明及C++程序代码,将应填入(n)处的语句写在对应栏内。【说明】 本程序的功能是根据矩形左

阅读以下说明及C++程序代码,将应填入(n)处的语句写在对应栏内。

【说明】

本程序的功能是根据矩形左上角和右下角顶点坐标生成一个矩形对象,然后输出该矩形4个顶点的坐标,计算并输出该矩形的面积。

【C++代码】

include<iostream>

using namespace std;

class MyPoint(//表示平面坐标系中的点的类

double x;

double y;

public:

MyPoint (double x,double y){this->x=x;this->y=y;}

double getX()const{(1);}

double getY()const{ return y;}

void show()const{ cout<<'('<<x<<','<<y<<')';}

};

class MyRectangle{ //表示矩形的类

MyPoint upleft; //矩形的左上角顶点

MyPoint down right; //矩形的右下角顶点

public:

MyRectangle(MyPoint upleft,MyPoint downright);

MyPoint getUpLeft()const{return up_left;} //返回左上角坐标

MyPoint getDownRight()const{return down_right;} //返回右下角坐标

MyPoint getUpRight()const; //返回右上角坐标

MyPoint getDownLeft()const; //返回左下角坐标

double area()const; //返回矩形的面积

};

MyRectangle:: MyRectangle((2)):

up left(p1),down_right(p2){}

MyPoint MyRectangle::getUpRight()const

{

return MyPoint(down_right.getX(),up_left.getY());

}

MyPoint MyRectangle::getDownLeft()const

{

return MyPeint((3));

}

double (4) ::area()const

{

return (getUpLeft(),getX()-getDownRight().getX())*

(getDownRight().getY()-getUpLeft().getY());

}

int main()

{

MyRectangle r(MyPoint(0,2),MyPoint(2,0));

r.getUpLeft(),show();

r.getUpRight().show();

r.getDown Right().show();

(5);

cout<<r.area()<<end1;

return 0;

}

点击查看答案
第2题
阅读以下说明及C++程序代码,将应填入(n)处的语句写在对应栏内。【说明】 本程序的功能是生成螺旋方

阅读以下说明及C++程序代码,将应填入(n)处的语句写在对应栏内。

【说明】

本程序的功能是生成螺旋方阵,用户可以输入该方阵的行列数,然后就生成对应的螺旋方阵。例如:当n=5时,对应的螺旋方阵如下:

1 16 15 14 13

2 17 24 23 12

3 18 25 22 11

4 19 20 21 10

5 6 7 8 9

【C++代码】

include"stdio.h"

include"iostream,h"

int array[11][11];

int temp;

int ROW;

void godown(int &m,int &a)

{

for(temp=1; temp<=ROW;temp++)

if(array[temp][a]==0)

array[temp][a]=(1);

a++;

}

void goright(int &m,int &b)

{

for(temp=1;temp<=ROW;temp++)

if(array[b][temp]==0)

array[b][temp]=m++;

b--;

}

void goup(int &m.int &c)

{

for(temp=ROW;temp>0;temp-)

if(array[temp][c]==0)

array[temp][c]=m++;

c--;

}

void goleft(int &m,int &d)

{

for(temp=ROW;temp>0;temp--)

if(array[d][temp]==0)

array[d][temp]=m++;

(2);

}

void main()

{

int a,b,c,d,max,m;

cin>>ROW;

cout>>end1;

for(a=1;a<=ROW;a++)

for(b=1;b<=ROW;b++)

(3);

m=1;

a=d=1;

b=c=ROW;

max=(4);

whiie(m<=max)

{

godown(m,a);

(5) (m,b);

goup(m,c);

goleft(m,d):

}

for(a=1;a<=ROW;a++)

{

for(b=1;b<=ROW;b++)

printf("%3d ",array[a][b]);

cout<<end1;

}

}

点击查看答案
第3题
阅读以下说明和C++代码,将应填入_____处的字句写在答题纸的对应栏内。

【说明】现需要统计某企业员工的月平均工资,即该企业本月发给员工的工资总和除以员工数。假设企业本月发给员工的工资总和为sumSalary,该企业的员工总数为employeeNumber,下面的程序代码计算该企业员工本月的平均工资,其中需要处理employNumber为0的情况。【C++代码】

阅读以下说明和C++代码,将应填入_____处的字句写在答题纸的对应栏内。	【说明】现需要统计某企业

【问题1】程序运行时,若输入的员工工资总和为6000,员工数为5,则屏幕输出为:请输入当月工资总和与员工数:阅读以下说明和C++代码,将应填入_____处的字句写在答题纸的对应栏内。	【说明】现需要统计某企业

【问题2】若程序运行时,第一次输入的员工工资总和为6000,员工数为0,第二次输入的员工工资总和为0,员工数为0,则屏幕输出为:请输入当月工资总和与员工数:阅读以下说明和C++代码,将应填入_____处的字句写在答题纸的对应栏内。	【说明】现需要统计某企业

点击查看答案
第4题
阅读以下说明及C++程序代码,将应填入(n)处的语句写在对应栏内。【说明】 本程序的功能是实现任意两

阅读以下说明及C++程序代码,将应填入(n)处的语句写在对应栏内。

【说明】

本程序的功能是实现任意两个大整数的乘法运算,例如:

输入整数1:8934793850094505800243958034985058

输入整数2:234584950989689084095803583095820923

二者之积:

209596817742739508050978890737675662366433464256830959194834854876 8534

【C++代码】

include<iostream.h>

const int MAXINPUTBIT=100;

const int MAXRESULTBIT=500;

class LargeNumber{

int i,j;

int temp;

int one[MAXINPUTBIT+1];

int onebit; //one的位数

int two[MAXINPUTBIT+1];

int twobit; //two的位数

int result[MAXRESULTBIT+1];

public:

LargeNumber();

~LargeNumber();

int inputone(); //出错返叫0,否则返回1

int inputtwo(); //同上

void multiplication(); //乘

void clearresult(); //清零

void showresult(); //显示

};

LargeNumber∷LargeNumber()

{

for(i=0;i<=MAXINPUTBIT;i++)

{

one[i]=0;

two[i]=0;

}

nebit=0;

twobit=0;

inputone();

inputtwo();

}

LargeNumber∷~LargeNumber()

{

}

int LargeNumber∷inputone()

{

char Number[MAXINPUTBIT+1];

cout<<"Please enter one:";

cin>>Number;

i=0;

j=MAXINPUTBIT;

while(Number[i]!='\0')

i++;

nebit=i;

for(i--;i>=0;i--,j--)

{

if(int(Number[i])>=48&&int(Number[i])<=57)

(1); //由字符转换为数字

else

return 0;

}

return 1;

}

int LargeNumber∷inputtwo()

{

char Number[MAXINPUTBIT+1];

cout<<"Please enter two:";

cin>>Number;

i=0;

j=MAXINPUTBIT;

while(Number[i]!='\0')

i++;

twobit=i;

for(i--;i>=0;i--,j--)

{

if(int(Number[i])>=48&&int(Number[i])<=57)

two[j]=int(Number[i]-48); //由字符转换为数字

else

return 0;

}

return 1;

}

void LargeNumber∷multiplication() //乘法

{

clearresult();

int m;

for(i=MAXINPUTBIT;i>=0;i--)

{

temp=two[i];

for(j=(2),m=MAXINPUTBIT;m>=0;m--,j--)

{

result[j]+=temp*one[m];

if(result[j]>9)

{

result[j-1]+=result[j]/10;

(3);

}

}

&n

点击查看答案
第5题
阅读以下说明和C++代码,将填入(n)处的字句在应栏内。[说明] 现需要统计某企业员工的月平均:[资,

阅读以下说明和C++代码,将填入 (n) 处的字句在应栏内。

[说明]

现需要统计某企业员工的月平均:[资,即该企业本月发给员工的工资总和除以员工数。假设企业本月发给员工的工资总和为sumSalary,该企业的员工总数为employeeNumber,下面的程序代码计算该企业员工本月的平均工资,其中需要处理employNumber为0的情况。

[C++代码]

include

using namespace std;

class Department {

protected:

float average(float x, int y){

if(Y==O) throw (1)______ ;

return x/y;

}

public:

void caculate(void){

float sumSalary;

int employeeNumber;

try{

cout <<"请输入当月工资总和与员工数:"<<endl;

cin >> sumSalary >> employeeNumber:

float k=average(sumSalary,employeeNumber);

cout <<"平均工资:"<<k<<endl;

}

(2)______ (int e){

if(e==0){

cout <<"请重新输入当月工资总和与员工数:"<<endl;

cin>>sumSalary>>employeeNumber;

float k=average(sumSalary,employeeNumber);

cout<<"平均工资:"<<k<<endl;

}

}

}

};

VOid msin(){

try {

(3)______ ;

d.caculate();

}

(4)______ (int e){

if(e==0)

cout<<"程序未正确计算平均工资!"<<endl;

}

}

[问题1]

程序运行时,若输入的员工工资总和为6000,员工数为5,则屏幕输出为:

请输入当月工资总和与员工数:

6000 5

(5)______

[问题2]

若程序运行时,第一次输入的员工工资总和为6000,员工数为0,第二次输入的员工工资总和为0,员工数为0,则屏幕输出为:

请输入当月工资总和与员工数:

6000 0

(6)______

0 0

(7)______

点击查看答案
第6题
阅读以下说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 以下程序为求行

阅读以下说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。

【说明】

以下程序为求行列式X(5,5)的值S。

【Visual Basic代码】

Private Function col (byval x (5,5 ) as integer ) as long

dim fesult as long

dim temp as long

dim I as integer

dim j as integer

dim k as imeger

result = 0

for I = to 5

(1)

for j = 1 to 5

if I+j>6 then

k= (1+j ) mod 5

else

k=1

endif

temp=temp*x (k,j )

(2)

result=(3)

(4)

(5)

End function

点击查看答案
第7题
阅读以下说明和C++代码,将应填入____处的语句或语句成分写在答题纸的对应栏内。

某数据文件students.txt的内容为100名学生的学号和成绩,下面的程序将文件中的数据全部读入对象数组,按分数从高到低进行排序后选出排名前30%的学生。【C++代码】

阅读以下说明和C++代码,将应填入____处的语句或语句成分写在答题纸的对应栏内。	某数据文件stu

点击查看答案
第8题
阅读以下说明及Visual Basic 程序代码,将应填入(n)处的字句写在对应栏内。[说明] 本程序求3~100之

阅读以下说明及Visual Basic 程序代码,将应填入(n)处的字句写在对应栏内。

[说明]

本程序求3~100之间的所有素数(质数)并统计个数;同时将这些素数从小到大依次写入顺序文件E: \dataout.txt;素数的个数显示在窗体Form1上。

[Visual Basic 代码]

Private Sub Command1_ Click ()

Dim count as integer, flag as Boolean

Dim t1 as Integer, t2 as Integer

(1)

Count=0

For t1=3 to 100

Flag=Tree

For t2=2 to Int(Sqr (t1 ) )

If (2) Then flag=False

Next t2

(3)

count=(4)

write 1, t1

End if

Next t1

(5)

Close 1

End Sub

点击查看答案
第9题
阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。 【说明8.1】 以下程序

阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。

【说明8.1】

以下程序的功能是:生成20个200~300之间的随机整数,输出其中能被5整除的数并求出它们的和。

【程序代码8.1】

Private Sub Command1_Click()

For i=1 To 20

x=Int((1)*200+100)

If (2)=0 Then

Print x

S=S+ (3)

End If

Next i

Print"Sum=";S

End Sub

【说明8.2】

程序8.2运行后,单击窗体,则在窗体上显示的内容是:a=(4)和b=(5)。

【程序代码8.2】

Private Sub Form_Click()

Dim a As Integer,b As Integer

a=20:b=50

p1 a,b

p2 a,b

p3 a,b

Print"a=";a,"b=";b

End Sub

Sub p1(x As Integer, ByValy As Integer)

x=x+l0

y=y+20

End Sub

Sub p2(ByVal×As Integer, y As Integer)

x=x+l0

y=y+20

End Sub

Sub p3(ByVal×As Integer, ByVal y As Integer)

x=x+10

y=y+20

End Sub

点击查看答案
第10题
阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。【说明】 已知窗体上有

阅读以下应用说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。

【说明】

已知窗体上有两个名为cmdGene和cmdSort的命令按钮。单击cmdCene按钮时,随机产生10个[1,100]范围内的整数并将它们放在数组intA中;单击cmdSort按钮时,用选择法排序这10个数并输出。

【程序代码】

Dim intA(1 To 10)As integer

Private Sub cmdGene_Click()

Dim intl As Integer

Randomize

For intl = 1 To 10

intA(intl) =(1)

Next intl

End Sub

Private Sub cmdSort_Click()

Dim intl, intJ,intMin, intTemp As Integer

For intl = 1 To 9

intMin = intA(intl)

For intJ=(2) To 10

If intA(intJ) < intMin Then

Temp = intA(intJ)

intA(intJ)=(3)

intMin = intTemp

End If

Next intJ

(4)

(5)

For intl = 1 To 10

Print Str(intA(intl))+" ";

Next intl

Next lntl

Print

End Sub

点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP