编函数,w是大于10的无符号整数,若w是n(n>=2)位的整数,求出w的后n-1位的数作为函数值返

来源:百度知道 编辑:UC知道 时间:2024/06/27 03:16:07
要用C++做答,请编写一个unsigned fun(unsigned w)函数,w是一个大于10的无符号整数,若w是n(n>=2)位的整数,求出w的后n-1位的数作为函数值返回。例如:w值为5923,则函数返回923;w值为923则函数返回23。

是说比w是4321,那么函数的返回值就是321对吧,也就是说是4321-4000=321是不是这样。你要什么语言写的呢,是C语言吗?这样吧,我说一下我的思路吧,我也好久没有写代码了。
这个函数的形参是int w,返回值也是int类型的。
1.把实参传入,求出w是n位数,这个n 是要自己求出来的吧?
如何求出n呢,也许可以先把这个int型的w转成String型,这样就可以求出string数组的长度m,m-1就是n了,因为String字符型有一个“\0”的结束符,这只是我的猜测,以实际的调试运行结果为准。
2.然后用w-(w的首位)*10的(n-1)次方 就是结果了,返回就可以了。w的首位可以用之前那个String数组的第一个元素。
注第2步也可以用w%(10的(n-1)次方),得到的余数就是结果了。

哈哈,好久没有思考了,我的脑子都快生锈了。试试看,不行再说吧.对不住啦。