用C语言编程:一条绳子长3000米,第一天减去一半,第二天减去剩下的一半,问减多少天绳子的长度小于或等于5米

要用do while语句
2025-04-15 12:56:24
推荐回答(5个)
回答1:

#include

int main()
{
float total = 3000;
int days = 0;
while (total > 5.0)
{
total /= 2;
days++;
}

printf("%d天\n", days);
return 0;
}

答案为10天

回答2:

float i;
int l;
for(i=3000,l=0;i>5;l++)
i=i/2;
printf("%d",l);
就是循环一下就好了。

回答3:

main()
{
int i=0;
float k=3000.0;
do
{
k=k/2;
i++;
while (k>5.0);
printf("%d\n",i);
}

回答4:

递归思想。

看楼上的,吧while适当修改成do while,两者的区别仅在于第一次loop时do while一定会执行而while不一定执行。

回答5:

#include
int main()
{
double s=3000;
int count=0,i=1;
while (i)
{
s=s/2.0;
count++;
if(s<=5)
break;
}
printf("%d",count);
}