C++语言编程:猜数游戏.

用户想好了一个1~1000之内的整数,由计算机来猜这个数。当计算机猜出的数比用户想的数大,用户输入1,当计算机猜出的数比用户想的数小,用户输入-1。这个过程一直进行到计算... 用户想好了一个1~1000之内的整数,由计算机来猜这个数。当计算机猜出的数比用户想的数大,用户输入1,当计算机猜出的数比用户想的数小,用户输入-1。这个过程一直进行到计算机猜中为止,用户输入0。图2是被猜数是75的运行效果。
以下是这个游戏程序的main函数,请你补充猜数函数guess。
#include<iostream>
using namespace std;
int main()
{
int answer,t=1;
cout<<"请你想好一个1~1000之内的整数,别告诉我,让我来猜猜!\n";
cout<<"猜中了,请输入0;若猜的数小了,请输入-1;若猜的数大了,请输入1\n";
cout<<"开始猜了……\n";
cout<<"是 "<<guess()<<" 吗?\t";
while(1)
{
cin>>answer;
if(answer==0)
{
cout<<"我猜中啦!只猜了 "<<t<<" 次,很强吧!\n";
break;
}
cout<<"是 "<<guess(answer)<<" 吗?\t";
t++;
}
}

提示:
为了提高猜数效率,可以采用折半查找算法。
展开
 我来答
ylgaoyifan
推荐于2018-04-06 · TA获得超过1156个赞
知道小有建树答主
回答量:354
采纳率:0%
帮助的人:398万
展开全部
考虑到主函数中调用了guess()和guess(int)两个函数。故将guess重载。
int guess()
{
return 50;
}
int guess(int ans)
{
static int min=0,max=100;
if(ans==1)
max=(max+min)/2;
else
min=(max+min)/2;
return (max+min)/2;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式