(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; 这样写应该能懂吧
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询