C语言 两道题 解释详细点 谢谢
2个回答
展开全部
第一题:
fun6(35);
首先执行k*=num%10;
根据优先级,上述表达式等价于 k=k*(num%10)=1*(35%10)=1*5=5;
然后执行num/=10; 即num=35/10=3;
之后while(3)条件成立继续循环。
首先执行k*=num%10;
根据优先级,上述表达式等价于 k=k*(num%10)=5*(3%10)=5*3=15;
然后执行num/=10; 即num=3/10=0;
之后while(0)条件不成立退出循环。
因此结果为15;
第二题:
第一次执行fib(5);
因为n=5不满足条件,所以执行fib(4)+fib(3);
因为n=4或3也不满足条件,所以fib(4)继续执行两个函数fib(3)+fib(2);而fib(3)执行两个函数fib(2)+fib(1);
因为n=3或2也不满足条件,所以fib(3)继续执行fib(2)+fib(1);而fib(2)执行fib(1)+fib(0);
综上结果得到fib(5)=fib(4)+fib(3)=fib(3)+fib(2) + fib(2)+fib(1)=fib(2)+fib(1) + fib(1)+fib(0) + fib(1)+fib(0) + fib(1)=fib(2)+6=fib(1)+fib(0)+6=8;
这样写应该能懂吧
fun6(35);
首先执行k*=num%10;
根据优先级,上述表达式等价于 k=k*(num%10)=1*(35%10)=1*5=5;
然后执行num/=10; 即num=35/10=3;
之后while(3)条件成立继续循环。
首先执行k*=num%10;
根据优先级,上述表达式等价于 k=k*(num%10)=5*(3%10)=5*3=15;
然后执行num/=10; 即num=3/10=0;
之后while(0)条件不成立退出循环。
因此结果为15;
第二题:
第一次执行fib(5);
因为n=5不满足条件,所以执行fib(4)+fib(3);
因为n=4或3也不满足条件,所以fib(4)继续执行两个函数fib(3)+fib(2);而fib(3)执行两个函数fib(2)+fib(1);
因为n=3或2也不满足条件,所以fib(3)继续执行fib(2)+fib(1);而fib(2)执行fib(1)+fib(0);
综上结果得到fib(5)=fib(4)+fib(3)=fib(3)+fib(2) + fib(2)+fib(1)=fib(2)+fib(1) + fib(1)+fib(0) + fib(1)+fib(0) + fib(1)=fib(2)+6=fib(1)+fib(0)+6=8;
这样写应该能懂吧
更多追问追答
追问
fun6(35) 中35怎么算的
追答
什么35怎么算的?35是传入的参数啊
2016-07-02 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
C语言 两道题 解释详细点
7:k=1*35%10 得到k=5 num = 35/10=3;k=5*35%10=15,num = 3/10=0;循环结束;输出15;
8:fib(5)=fib(4)+fib(3)=fib(3)+fib(2)+fib(2)+fib(1)=fib(2)+fib(1)+fib(1)+fib(0)+fib(1)+fib(0)+fib(1)=fib(1)+fib(0)+fib(1)+fib(1)+fib(0)+fib(1)+fib(0)+fib(1)=8
7:k=1*35%10 得到k=5 num = 35/10=3;k=5*35%10=15,num = 3/10=0;循环结束;输出15;
8:fib(5)=fib(4)+fib(3)=fib(3)+fib(2)+fib(2)+fib(1)=fib(2)+fib(1)+fib(1)+fib(0)+fib(1)+fib(0)+fib(1)=fib(1)+fib(0)+fib(1)+fib(1)+fib(0)+fib(1)+fib(0)+fib(1)=8
追问
第7题的35怎么来的
追答
unsigned n = 35;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询