几个小时以来,我一直在思考如何做到这一点。
例如,让我们给出一个不确定长度的数组 Arr[] = {1,2,3,4} 。
(不确定,因为它可以有任何其他数量的元素)
显而易见,在数学上执行此操作的最佳方法可能是将第一个元素 * 1000,+ 第二个元素 * 100,+ 第三个元素 * 10,+ 第四个元素相乘。
所以这样的结果将是:1000 + 200 + 30 + 4 = 1234。
理论非常简单,但是如何在“for”循环中实现这一点,事实上它可以有任何其他数量的元素,例如,假设它可以有 7 个元素,而操作现在需要“第七个”元素 * 100000"?我一直在考虑这个问题,但我想不出一种方法来将它写在“for”上,从而在同一个循环中实现这一点。你们对我怎么能这样做有什么建议吗?
谢谢!
假设你所有的整数都是以 10 为底的一位数:
int result = 0;
for (int i = 0; i < len; ++i) {
result = result*10 + arr[i];
}
Run Code Online (Sandbox Code Playgroud)