资源简介
数据结构课后作业,和初学者分享同学好的代码共同学习
代码片段和文件信息
/*
*代码文件 GroupGoods.cpp
*版本号:G1.0.111008
*使用Visual studio 2008 编译
*
*由于时间仓促,未能进行相关美化、优化、测试工作
*
*参与编写:李黎明,朱猛
*网络102小组公共资源,引用请注明出处
*/
#include “GroupGoods.h“
void Put( GoodsStack &shelf GoodsStack &ground GoodsGroup &stream );
bool Again();
int main()
{
GoodsStack shelf(“货架上“);
GoodsStack ground(“地上“);
GoodsGroup stream(“货物流中“);
cout << “ 货架上还没有商品,加一点吧!“< system(“pause“);
system(“cls“);
Put( shelf ground stream );
cout << “ 好了,开始倒货架了。“<< endl;
do{
Put( shelf ground stream );
}while( Again() );
system(“cls“);
cout<< “好了,没什么事了,可以退出了。“ << endl;
system(“pause“);
return 0;
}
void GetStream( GoodsGroup &stream );
void LoadStream( GoodsGroup &stream );
void Tidy( GoodsStack &shelf GoodsStack &ground GoodsGroup &stream );
//摆放货物
void Put( GoodsStack &shelf GoodsStack &ground GoodsGroup &stream )
{
Error streamE(“这都选得错?“ “还是默认帮你拉一批货好了“ );
cout << “你是想 [1.自己添加货物] 还是 [0.拉一批默认的货] 呢?“ < switch( GetInt() )
{
case 1:GetStream( stream );break;
case 0:LoadStream( stream );break;
default:streamE.ErrorTips();
LoadStream( stream );
}
cout << “货物流就绪,开始整理“ < Tidy( shelf ground stream );
stream.InitQ();
cout << “完成了,货架上的货依日期排列得整整齐齐了!“< << “ 从上到下的排序如下:“< shelf.Display();
system( “pause“ );
system( “cls“ );
}
//获取货物流
void GetStream( GoodsGroup &stream )
{
Goods * newG;
cout << “要添加几个呢?“ < int amount = GetInt();
for( int i = 0; i newG = new Goods;
newG->goodsDate.GetDate();
stream.EnterQ( newG );
}
}
//加载默认货物流
void LoadStream( GoodsGroup &stream )
{
Goods * newG;
ifstream fin ( “example.txt“ ios::in );
for( int i = 0; i < 4; ++i ){
newG = new Goods;
newG->goodsDate.ReadDate( fin );
stream.EnterQ( newG );
}
}
//整理
void Tidy( GoodsStack &shelf GoodsStack &ground GoodsGroup &stream )
{
while( !stream.IsEmpty() ){ //货物流非空时,循环执行放货操作
while( !shelf.IsEmpty() ){ //货架非空时,进行日期判断
//货架顶商品日期早于货物流头商品时
if( shelf.GetTop()->goodsDate.EarlyThan
(stream.GetHead()->goodsDate ))
ground.Push( shelf.Pop() ); //将货架的商品放到地上
else
break;
}
while( !ground.IsEmpty() ){ //地面非空时,进行日期判断
//地上顶层商品日期不早于货物流头商品时
if( !ground.GetTop()->goodsDate.EarlyThan
(stream.GetHead()->goodsDate ))
shelf.Push( ground.Pop() ); //将地上的商品放到货架
else
break;
}
shelf.Push( stream.DeleteQ() );
}
while( !ground.IsEmpty() ) //把地上的商品全放回货架
shelf.Push( ground.Pop() );
}
bool Again()
{
do{
system( “cls“ );
cout << “ 要再加一批货吗?“ << endl
<< “0.不要 1.要 2.看看货架满了没“ < switch( GetInt() )
{
case 0:return false;
case 1:return true;
case 2:system( “cls“ );
cout<<“偷偷的告诉你,这个货架是由最新的纳米材料制成,“
<<“应用了相对论和量子论的高级原理,“
<<“只要你和你的电脑扛得住,它就永远不会满“< system(“pause“);
break;
default:return false;
}
}while(1);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 39 2011-10-08 17:27 商品货架\example.txt
文件 1299 2011-10-08 21:45 商品货架\GroupCommon.h
文件 3344 2011-10-08 21:49 商品货架\GroupGoods.cpp
文件 3430 2011-10-08 21:24 商品货架\GroupGoods.h
文件 51712 2011-10-08 21:49 商品货架\商品货架管理.exe
目录 0 2011-10-08 21:53 商品货架
----------- --------- ---------- ----- ----
59824 6
- 上一篇:G31T-LM_1.0_51KT03BUS_启天M6900
- 下一篇:主板测试软件
相关资源
- 武汉大学十套数据结构试题及答案
- 数据结构课程设计——校园导游
- 数据结构实验报告---数制转换
- 数据结构火车车厢重排问题
- 建立一个带权无向图用邻接矩阵表示
- 天理计算机真题答案
- 数据结构课设——哈夫曼树
- 数据结构课程设计——商品货架管理
- 数据结构八皇后问题实验报告
- 数据结构 冒泡排序 输出每一趟结果
- 树孩子—兄弟链表表示
- 迷宫求解数据结构课程设计报告.doc
- 考研数据结构算法总结.pdf完美版
- 数据结构作业霍夫曼编码译码器
- 数据结构课程设计之哈夫曼树的建立
- 利用顺序栈将一个非负的十进制整数
- 数据结构课程设计,
- TSP回溯法实现从武汉出发,进行34个省
- 上海理工大学《数据结构》期末试题
- 杭电数据结构马踏棋盘实验报告
- 利用哈夫曼编码进行通信可以大大提
- 数据结构运动会分数统计实验报告
- 操作系统+算法导论+计算机网络知识
- 运动会分数统计设计报告
- 数据结构实验报告3-栈与队列-中缀表
- 数据结构实验报告1-线性表-两个有序
- 中缀表达式转后缀表达式并求值
- 数据结构第九章 查找作业及答案100分
- 第十章 排序作业及答案数据结构
- 数据结构课程设计 表达式求值
评论
共有 条评论