zl程序教程

您现在的位置是:首页 >  后端

当前栏目

C++第10周项目6参考——-打豆豆

C++项目 10 参考
2023-09-11 14:15:56 时间

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565


【项目6-打豆豆】阅读并运行下面的程序“吃饭、睡觉、打豆豆”,体会形式上死循环,实际不“死”的技巧。在此基础上,改写程序并提交报告。
程序中用了自定义函数(第4章内容)——老贺又疯了,拿这个来为难菜鸟(所幸的是,这样的程序看起来还不赖)。改写任务1:去除有关使用自定义函数的一切痕迹,根据用户的选择,用你已经会的cout直接输出有关内容(不学好的逆天行为,大程序要用自定义函数组织的,为了提前体验,老贺用馊主意为函数打前阵了。)改写任务2:将程序中的if改为switch。
改写前的程序:

#include iostream 

using namespace std;

int main()

 char cChioce;

 void eat();

 void sleep();

 void hitdoudou();

 cout "* 1. 吃饭" endl;

 cout "* 2. 睡觉" endl;

 cout "* 3. 打豆豆" endl;

 cout "* 0. 退出" endl; 

 cout "* 请选择(0-3):";

 cin cChioce;

 if (cChioce==1) 

 eat();

 else if (cChioce==2)

 sleep();

 else if (cChioce==3)

 hitdoudou();

 else if (cChioce==0)

 break;

 else 

 cout "\007选择错误!" endl endl;

 continue;

 cout "恭喜你完成了一项工作!" endl endl;

 }while(1);

 return 0;

void eat()

 cout "我吃吃吃... ..." endl;

void sleep()

 cout "我睡觉觉... ..." endl;

void hitdoudou()

 cout "我打打打... ..." endl;


改写后的程序:
#include iostream 

using namespace std;

int main()

 char cChioce;

 cout endl;

 cout "* 1. 吃饭" endl;

 cout "* 2. 睡觉" endl;

 cout "* 3. 打豆豆" endl;

 cout "* 0. 退出" endl; 

 cout "* 请选择(0-3):";

 cin cChioce;

 if (cChioce==0)

 cout "撤退!" endl; 

 break; //此break的跳转点有别于下面switch中的break.

 else 

 switch (cChioce)

 case 1: 

 cout "我吃吃吃... ..." endl; 

 break;

 case 2:

 cout "我睡觉觉... ..." endl;

 break;

 case 3:

 cout "我打打打... ..." endl;

 break;

 default:

 cout "\007选择错误!" endl;

 //这儿可以不写continue;

 }while(1);

 return 0;

}






(下面是填好空的程序) (1)下面程序的功能是统计文本文件abc.txt中的字符个数,请填空将程序补充完整。
【项目2:洗牌】 在扑克牌游戏中,每次游戏开始都要求把54张牌重新排列一下,称为洗牌。试编写程序将一副扑克牌(用54个整数1~54表示)随机洗好后,顺序输出54张牌的情况。 参考界面: 参考解答(共4种,可作为程序阅读,品味用STL解决问题的方法,必要时,请查找相关手册) 解法1:初始化一个 vector,顺序加入所有牌,即整数1~54。然后从容器中随机
【项目-数组类模板】 在数组类的基础上,将之改造为类模板,以使数组中可以存储各种类型的数据。 template class T //数组类模板定义 class Array private: T* list; //用于存放动态分配的数组内存首地址 int size; //数组大小(元素个数)
是一个函数模板的两个实例,其功能是将数组a中的前size个元素按从小到大顺序排列。试设计这个函数模板。 参考解答:
【项目1-分数类中的运算符重载】 (1)实现分数类中的运算符重载,在分数类中可以完成分数的加减乘除(运算后再化简)、比较(6种关系)的运算。
【项目-数组类运算的实现】 设计数组类Array,为了实现测试函数中要求的功能,请补足相关的函数(构造、析构函数)和运算符重载的函数。 实现策略提示:可以将测试函数中的语句加上注释,取消一句的注释,增加相应的函数,以渐增地实现所有的功能,避免全盘考虑带来的困难。
【项目 - 点-圆-圆柱类族的设计】 按以下的提示,由基类的设计和测试开始,逐渐地完成各个类的设计,求出圆格柱体的表面积、体积并输出并且完成要求的计算任务: (1)先建立一个Point(点)类,包含数据成员x,y(坐标点),实现需要的成员函数,并设计main函数完成测试; (2)以Point为基类,派生出一个Circle(圆)类,增加数据成员r(
贺利坚 烟台大学计算机学院教师,建设系列学习资源,改革教学方法,为IT菜鸟建跑道,让大一的孩子会编程,为迷茫的大学生出主意,一起追求快乐的大学。 著书《逆袭大学:传给IT学子的正能量》,帮助处于迷茫中的大学