【发布时间】:2018-10-20 22:17:44
【问题描述】:
以下程序反转用户输入。但是,对于带有尾随零的数字,在打印反转数字时会“忽略”零。
#include<stdio.h>
int main(void)
{
int n, reversedNumber = 0, remainder;
printf("Enter an integer: ");
scanf("%d", &n);
while(n != 0)
{
remainder = n%10;
reversedNumber = reversedNumber*10 + remainder;
n /= 10;
}
printf("Reversed Number = %d\n", reversedNumber);
return 0;
}
由于用户输入的整数长度未知,我们如何打印所有尾随零,例如:
Enter an Integer: 3000
Reversed Number = 0003
【问题讨论】:
-
将其作为字符串读取,并反转字符串。
-
我之前做过,也许我需要为这个问题添加一些上下文。目标是从原始数字的倒数第二个数字开始添加原始数字的数字。这意味着将 string 转换回整数将丢失前导零。 @AndrewHenle
-
@daumie 所以,您问了如何做某事,但这不是您的实际问题?您需要准确地说明您想知道的内容。 alk 提供的答案准确地回答了所提出的问题。