c++练习题源代码Word格式文档下载.docx

上传人:b****1 文档编号:13174155 上传时间:2022-10-07 格式:DOCX 页数:51 大小:43.65KB
下载 相关 举报
c++练习题源代码Word格式文档下载.docx_第1页
第1页 / 共51页
c++练习题源代码Word格式文档下载.docx_第2页
第2页 / 共51页
c++练习题源代码Word格式文档下载.docx_第3页
第3页 / 共51页
c++练习题源代码Word格式文档下载.docx_第4页
第4页 / 共51页
c++练习题源代码Word格式文档下载.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

c++练习题源代码Word格式文档下载.docx

《c++练习题源代码Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《c++练习题源代码Word格式文档下载.docx(51页珍藏版)》请在冰豆网上搜索。

c++练习题源代码Word格式文档下载.docx

1、字符串输入输出时限:

3000ms

内存限制:

10000K

总时限:

编写一个简单的控制台应用程序,先输入姓名,如“John”,再输

描述:

出问候语,如“Hello,John!

”。

输入:

John

输出:

Hello,John!

输入样例:

输出样例:

1、使用string类定义字符串对象,需包含头文件<

2、使用cin和提取符>

从键盘输入数据,使用cout和插入符<

输出结

提示:

果到屏幕,需包含头文件<

3、注意使用名称空间std。

2、求3个数的平均值时限:

从键盘上输入3个浮点数,求这3个数的平均值。

3个浮点数

3个数的平均值

1.51.61.3

1.46667

1、用usingnamespacestd;

明确名字空间

2、用cin对象,采用>

运算符输入数据

3、用cout对象,采用<

运算符输出数据#include<

usingnamespacestd;

floatx1,x2,x3;

cin>

x1>

x2>

x3;

cout<

(x1+x2+x3)/3<

endl;

3、求鞍点时限:

输入一个二维矩阵,找出其中所有鞍点。

如果矩阵有鞍点,则输出鞍点的信息:

行号、列号、值;

如果没有鞍点,则输出“Notfound!

所谓“鞍点”,是指满足以下条件的矩阵中的一个数:

在它所在的行上最小、所在列上最大。

该题中假设矩阵中任意两个数互不相等。

输入数据有多行:

第一行是矩阵的行数m和列数n

从第二行起共包含m行,每行包含n个数,为矩阵的一行数据

如果矩阵有鞍点,输出鞍点的信息,包括:

所在行、所在列、值

如果没有鞍点,输出Notfound!

34

11235647

12456690

16773418

2016

1、要求用动态内存分配来完成,可用new和delete实现;

2、屏幕输出只有2016(加回车换行),不能有其它信息。

//SaddlePoint.cpp:

定义控制台应用程序的入口点。

//Bufferstosavethemaximum

//Bufferstosavetheminimum

matRow=newint[nMaxRow];

elementineachrow

matCol=newint[nMaxCol];

elementineachcolumn

//

int**mat;

int*matRow,*matCol;

intnMaxRow=0,nMaxCol=0;

boolbFind=false;

intnTargetRow=0,nTargetCol=0,nSaddlePoint=0;

inti,j;

//cout<

Pleaseinputthenumberofrowsandthenumberofcolumns:

cin>

nMaxRow>

nMaxCol;

//Allocatememoriesforthetwodimensionalmatrices

mat=newint*[nMaxRow];

for(i=0;

i<

nMaxRow;

i++)

mat[i]=newint[nMaxCol];

//Inputtheelements

Pleaseinputtheelements:

for(j=0;

j<

nMaxCol;

j++)

mat[i][j];

//Findtheminimumelementineachrow

for(i=0;

intnMin=mat[i][0];

for(j=1;

if(mat[i][j]<

nMin)nMin=mat[i][j];

matRow[i]=nMin;

//Findthemaximumelementineachcolumnfor(j=0;

intnMax=mat[0][j];

for(i=1;

if(mat[i][j]>

nMax)nMax=mat[i][j];

matCol[j]=nMax;

//Findthesaddlepoint

nMaxRow&

&

!

bFind;

if(mat[i][j]==matRow[i]&

mat[i][j]==matCol[j])

nTargetRow=i;

nTargetCol=j;

nSaddlePoint=mat[i][j];

bFind=true;

break;

//Outputthesearchedrowandcolumnandthecorrespondingsaddlepoint

if(!

bFind)

cout<

Notfound!

else

nTargetRow<

nTargetCol<

nSaddlePoint<

//Releasememoriesdelete[]matCol;

delete[]matRow;

delete[]mat[i];

delete[]mat;

return0;

4、链表操作时限:

建立一个链表,每个节点包括学生的学号、姓名、性别、年龄。

先输入5个学生的数据,再输入一个年龄,如果链表中有年龄等于此年龄

的记录,则删除所有年龄等于此年龄的记录,否则在链表的最后增加一个新节点,学号为180姓名为"

aaa"

,性别为"

male"

创建链表时输入5个职工的职工号和工资,学号为大于100且小于

200的整数,姓名为长度小于20的字符串,性别为长度小于10的字符串,年龄为大于等于0且小于200的整数。

按顺序输出链表中的所有数据,每个数据占一行。

101zhangsanmale30103lisifemale18

105wangwumale25

107maliumale28

109niuqifemale2228

101

zhangsanmale

30

103

lisifemale

18

105

wangwumale25

109

niuqifemale22

要求用动态内存分配实现,注意new和delete的使用。

1.函数重载

时限:

设计一菜单程序,利用函数重载实现员工月工资的计算,计算方法如下:

(1)管理人员的月工资=月薪-缺勤天数×

月薪÷

22;

(2)销售人员的月工资=底薪+销售金额×

提成比例;

(3)计件工人的月工资=产品件数×

每件报酬;

(4)计时工人的月工资=工作小时×

小时报酬;

职工类别及相关信息。

职工类别:

1表示管理人员;

2表示销售人员;

3表示计件工人;

4表示计时工人;

其余字符表示退出。

相关信息:

若为管理人员,则输入月薪和缺勤天数;

若为销售人员,则输入底薪、销售金额和提成比例;

若为计件工人,则输入产品件数和每件报酬;

若为计时工人,则输入工作小时和小时报酬。

员工月工资。

1〈--职工类别

5000.01〈--月薪和缺勤天数

4772.73

1.计算管理人员、销售人员、计件工人、计时工人的月工资的函数原型可以分别设计如下:

doublegetEarning(doublesalary,intabsenceDays);

doublegetEarning(doublebaseSalary,doublesalesSum,doublerate);

提示:

doublegetEarning(intworkPieces,doublewagePerPiece);

doublegetEarning(doublehours,doublewagePerHour);

2.菜单程序设计如下:

...

Pleaseselect..."

1:

Manager."

2:

SalesMan."

3:

PiecesWorker."

4:

Hour-Worker."

Others:

Quit"

sel;

switch(sel)

{

case1:

cin>

;

cout<

getEarning(. );

break;

case2:

case3:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1