怪不得水王没给分,原来是有两个错……
原帖由 卫天龙 于 2015-5-23 12:45 发表
#include<iostream>
using namespace std;
void main()
{
int mouse=100,meat=0,day=0;
do{ //循环
if(mouse=1)break; //剩1只老鼠时退出循环
if(meat-mouse<0) //肉不够吃
mouse=mouse-1;
meat=meat+100;
meat=meat-mouse;
day++;
else //肉够吃
meat=meat-mouse;
day++;
}
day=day+meat; //最后一只老鼠把另一只老鼠“变成食物”,还能多点肉
cout<<day<<endl;
}
if(mouse=1)break; //剩1只老鼠时退出循环《——这句删去,一方面do的循环我写错了,另一方面if()里的等于应该是“==”,单个等号是赋值
“day++}”这里在“}”后加while(1),不然只有do的话循环结构不对
唉,看来我也是学完就忘的典范
编辑后:其实while(1)也是错的,循环里没break了,需要一个条件让它退出,应该是while(mouse>1)
[ 本帖最后由 卫天龙 于 2015-5-24 13:42 编辑 ]