gpt4 book ai didi

c - 不使用数组来反转数字的程序

转载 作者:行者123 更新时间:2023-11-30 19:18:58 24 4
gpt4 key购买 nike

这是我使用的代码。它工作完美,但我不明白为什么它有效。我只是不断改变我原来的逻辑,直到我开始在计数器循环中使用 -1 。

#include<stdio.h>
#include<math.h>

int main(){
int number, reverse, sum =0;
scanf("%d", &number);
int temp = number;
int ctr;

for(ctr = -1; temp!=0; ctr++)
temp = temp/10;

while(number)
{
sum = sum + (number%10 * (pow(10, ctr--)));
number = number/10;
}
printf("%d", sum);

return 0;
}

最佳答案

相同的基本数学,但更容易理解:

unsigned int number = 123456789;
unsigned int reversed = 0;
do {
reversed *= 10;
reversed += number % 10;
number /= 10;
} while (number > 0);

关于c - 不使用数组来反转数字的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25920209/

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