嵌入式C开发基础题(3)

发布时间:2017-3-24 14:12:17 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"嵌入式C开发基础题(3)",主要涉及到嵌入式C开发基础题(3)方面的内容,对于嵌入式C开发基础题(3)感兴趣的同学可以参考一下。

第3题:考查递归调用 int foo ( int x , int n)  { int val; val =1; if (n>0) { if (n%2 == 1) val = val *x; val = val * foo(x*x , n/2); } return val; } 这段代码对x和n完成什么样的功能(操作)? (a)x^n (x的n次幂)    (b)x*n(x与n的乘积)     (c) n^x(n的x次幂)    (d)以上均不是 解答: 如果仅仅是解答题目的话,比较简单,就直接n=2,3,5替换一下,看结果如何; //这个程序的非递归版本 int what ( int x , int n) { int val; int product; product =1; val =x; while(n>0) { if (n%2 == 1) product = product*val; /*如果是奇数次幂, x(val) 要先乘上一次,; 偶数次幂,最后返回时才会到这里 乘以1*/ val = val* val;  n = n/2; } return product; }

上一篇:Ibatis+MySql实例
下一篇:如何找errno

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款