C++课程设计——猜成语小游戏

问题描述

题目描述:成语是中国汉字语言词汇中一部分定型的词组短句,是中国传统文化的一大特色,有固定的结构形式和固定的说法,表示一定的意义,在语句中是作为一个整体来应用的,承担主语、宾语、定语等成分。请设计猜四字成语游戏。

功能需求:

  1. 设计一个四字成语类Idiom,包含成语内容,多级解释。
  2. 设计一个猜四字成语游戏类Game,可以随机产生成语的解释信息,显示到控制台,等待用户输入猜测到的成语。
  3. 用户作答后,系统可以判断用户输入的成语内容是否正确,如果正确,继续一下;如果不正确,让用户继续做答,直到猜词成功。
  4. 设计提示功能,引导用户猜成功。如果用户根据一级解释没能回到正确,继续展开第二级解释,如果用户还是回答错误,继续展开更多级别的解释,直到全部解释展开完或者用户回答正确。
  5. 使用外部文件存储相关数据。

解题思路

引入一级解释,二级解释,关键字提示来达到多级解释的目的引导用户猜出成语,使用外部文件读取数据,用if语句达到循环的目的。

程序设计

部分源码

int num=rand()%n; //获得随机词语 
for(int i=0;i<num;i++) 
getline(fin,str1); 
getline(fin,str1,'-'); 
getline(fin,str2,'#'); 
getline(fin,str3); 
{ 
Idiom game(str1,str2,str3); // 根据读入的数据 生成对象Idiom! 
while(1) 
{ cout<<"给出的解释:"; 
cout<<game.note<<endl; 
cout<<"请输入成语:"; 
cin>>str1; 
while(1) 
{ 
if(str1==game.word) { cout<<"答对了!请继续\n"; break;} 
else { 
if(str1=="1") cout<<"提示为:"<<game.tishi<<endl; 
if(str1=="2") cout<<"前两个字为:"<< game.guanjianzi<<endl;
else 
cout<<"猜错了!请继续 如需提示请输入1,需要前两个字提示请输入2\n请输入成语:"; 
cin>>str1; 
} 
} 
break; 
} 
} 
fin.close(); 
} 
return 0; 
}

txt文件

 

测试结果

 想要查看完整源代码及程序设计报告的同学可以下载

C++课程设计猜成语小游戏完整源码及实验报告

其中包含源码、实验报告及外部txt文件

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pupu生威

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值