gpt4 book ai didi

将整数转换为数字数组 [C]

转载 作者:行者123 更新时间:2023-11-30 15:40:30 25 4
gpt4 key购买 nike

我是编程初学者,以前从未在这里发过帖子。我搜索了我的问题的答案,其中一个线程是 here ...但我无法让他们的方法发挥作用。

我正在尝试通过做一些 Project Euler 来学习 C挑战。对于挑战之一,我需要检查一个数字是否是回文。我想我应该通过将目标整数(称为产品)加载到数组中来实现此目的,然后再相互检查元素对(寻找对称性)。

首先,我检查我的产品有多长:

productLength = ceil(log10(product)); 

然后我有一个循环尝试将该整数加载到我的数组中,称为检查:

for(x = productLength; x <= 0; x--) //decrement from product length and loop
{
inspection[x - 1] = product % 10; //transfer product values to inspection array
product /= 10; //prepare product value for next pass (move digits one place to the right)
}

这似乎不起作用。我知道这可能是一些愚蠢的错误,但我无法发现它。

最佳答案

这一行

for(x = productLength; x <= 0; x--)

应该是:

for(x = productLength; x >= 0; x--)

但是,这里还有另一个问题。

    inspection[x - 1] = product % 10; //transfer product values to inspection array

循环将达到 x = 0(含),因此当 x = 0 时,这将导致索引无效。

所以循环应该如下所示:

for(x = productLength-1; x >= 0; x--)
{
inspection[x] = product % 10;
product /= 10;
}
inspection[productLength] = 0;

关于将整数转换为数字数组 [C],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20978262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com