c语言 解题 若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年有多少头母牛?
//若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年有多少头母牛?#include<cstdlib>#include<iostream>intmain...
// 若一头小母牛,从出生起第四个年头开始每年生一头母牛,按此规律,第n年有多少头母牛?
#include <cstdlib>#include <iostream> int main(void){ int n , zs1 , zs3 , zs2 , zs=0 , tmp; zs1=zs2=zs3=1; printf("输入年数:\n"); scanf("%d",&n); for(tmp=n;tmp>=4;tmp--)//计算公式 { zs=zs1+zs3; zs1=zs2; zs2=zs3; zs3=zs; printf("%d\n",zs);//每一年的参考数值 } if(n<=3) printf("%d年后牛的数量为:1\n",n);//前三年的数量 if(n<=50) printf("%d年后牛的数量为:%d\n",n,zs); //思念之后的数量 else printf("%d年后牛的太多了\n"); //超出显示范围 system("PAUSE"); return 0; }
这样是能算出来,但是年份超出58年 就超出了int的范围 显示负数 我想知道如何显示1000年以后的牛的正确数量...求帮助
#include <cstdlib>#include <iostream>int mu (int); int main(void){ int n ; int zs1 , zs3 , zs2 , zs=0 , tmp; zs1=zs2=zs3=1; printf("输入年数:\n"); scanf("%d",&n);//输入需要的年数 tmp = n; for(;tmp>=4;tmp--) { zs=zs1+zs3; zs1=zs2; zs2=zs3; zs3=zs; printf("%d",zs); } if(n<=3) printf("%d年后牛的数量为:1\n",n); else printf("%d年后牛的数量为:%d\n",n,zs); system("PAUSE"); return EXIT_SUCCESS; } 展开
#include <cstdlib>#include <iostream> int main(void){ int n , zs1 , zs3 , zs2 , zs=0 , tmp; zs1=zs2=zs3=1; printf("输入年数:\n"); scanf("%d",&n); for(tmp=n;tmp>=4;tmp--)//计算公式 { zs=zs1+zs3; zs1=zs2; zs2=zs3; zs3=zs; printf("%d\n",zs);//每一年的参考数值 } if(n<=3) printf("%d年后牛的数量为:1\n",n);//前三年的数量 if(n<=50) printf("%d年后牛的数量为:%d\n",n,zs); //思念之后的数量 else printf("%d年后牛的太多了\n"); //超出显示范围 system("PAUSE"); return 0; }
这样是能算出来,但是年份超出58年 就超出了int的范围 显示负数 我想知道如何显示1000年以后的牛的正确数量...求帮助
#include <cstdlib>#include <iostream>int mu (int); int main(void){ int n ; int zs1 , zs3 , zs2 , zs=0 , tmp; zs1=zs2=zs3=1; printf("输入年数:\n"); scanf("%d",&n);//输入需要的年数 tmp = n; for(;tmp>=4;tmp--) { zs=zs1+zs3; zs1=zs2; zs2=zs3; zs3=zs; printf("%d",zs); } if(n<=3) printf("%d年后牛的数量为:1\n",n); else printf("%d年后牛的数量为:%d\n",n,zs); system("PAUSE"); return EXIT_SUCCESS; } 展开
3个回答
展开全部
将int型换成long型,或者double型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是裴波那契数列的一种变化.
更多追问追答
追问
我知道呀 我最终想知道的是超出 计算机int范围之后 需要怎么样才能继续正确显示数字
追答
定义成long 长整型看看
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这是C还是C++
追问
c++
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询