解决任何一个实际的问题都不可避免的涉及到算法的问题,下面将通过实例来提供一个最优的方案:
今天开始更新每天一个基础程序:
下面先说下今天的问题:
首先出事意见价格在999元以内的商品,参与者要才出这件上平的价格。
在猜价格的过程中,主持人会根据参与者给出的假的,相应的给出“高了”或“低了的提示”。
下面我们来分析一下这个问题要想最快的猜出价格,当然是采用二分法,最大条件的去掉不符合条件的价格
但是这题似乎用不到这一点,下面来看一下源代码:
//20150501对C的练手
#include
int main()
{
intrealPrice,guessPrice,sentry =0;//分别代表真实的价格和猜想的价格,最后设置一个哨兵sentry
int i = 0; //标记猜测的次数
printf("请输入真实的价格:");
scanf("\n%d",&realPrice);
printf("请输入猜测的价格\n");
while(sentry==0)
{
printf("参与者:");
i++ ;
scanf("\n%d",&guessPrice);
if(realPrice>guessPrice)
{
printf("主持人:猜的价格偏低\n");
}
if(realPrice
{
printf("主持人;猜的价格偏高了\n");
}
if(realPrice==guessPrice)
{
sentry = 1;
printf("主持人:\n恭喜你猜对了,你一共猜了 %d 次",i);
}
}
return0;
}
今天开始更新每天一个基础程序:
下面先说下今天的问题:
首先出事意见价格在999元以内的商品,参与者要才出这件上平的价格。
在猜价格的过程中,主持人会根据参与者给出的假的,相应的给出“高了”或“低了的提示”。
下面我们来分析一下这个问题要想最快的猜出价格,当然是采用二分法,最大条件的去掉不符合条件的价格
但是这题似乎用不到这一点,下面来看一下源代码:
//20150501对C的练手
#include
int main()
{
intrealPrice,guessPrice,sentry =0;//分别代表真实的价格和猜想的价格,最后设置一个哨兵sentry
int i = 0; //标记猜测的次数
printf("请输入真实的价格:");
scanf("\n%d",&realPrice);
printf("请输入猜测的价格\n");
while(sentry==0)
{
printf("参与者:");
i++ ;
scanf("\n%d",&guessPrice);
if(realPrice>guessPrice)
{
printf("主持人:猜的价格偏低\n");
}
if(realPrice
{
printf("主持人;猜的价格偏高了\n");
}
if(realPrice==guessPrice)
{
sentry = 1;
printf("主持人:\n恭喜你猜对了,你一共猜了 %d 次",i);
}
}
return0;
}