问一下为什么我int换成double就不行了啊 int的话我数字小一点还可以运行不出错但换成double就不行了
题目是求猴子第一天拥有多少个桃子,猴子每天吃一掉半桃子后再吃一个
我用的是递归 t是数据的组数, n是天数, k是第n天猴子所剩下的的桃子数量
关键我想要这个数据能输出的范围更大所以我想换成double 但一换就出问题 萌新刚学c语言 求大佬帮忙看看👀吧
double肯定不行了,挑子数量就是整形嘛?不需要用递归,程序非常简单,天数就是循环次数,参考:
#include "stdio.h"
void main()
{
int sum=1;//最后一天的桃子数量;
int day,i;
scanf("%d",&day);
for(i=day-1;i>=1;i--){
sum = (sum+1)*2;
}
printf("共有%d个桃子.",sum);
}
没法看啊,hz作为递归函数,else部分也是要return的啊
额你看两份答案其实是一样的只是代码写法不同而已本质是一样的