C语言程序反转一个数字
在本文中,你将学会使用C语言反转一个整数;
反转整数
用户输入一个整数,程序将其进行反转;
例如:12345 => 54321
下面将通过两种方式来实现;
实现方法1
可以将用户输入以字符数组的形式进行存储,然后通过反向遍历得到一个新的字符数组,再将其转换成整数类型;
#include <stdio.h>
#include <stdlib.h>
int main() {
char input[255] = {'\0'};
char result[255] = {'\0'};
printf("enter an integer:");
scanf("%s", &input);
//反转
int index = 0;
for (int i = 254; i >= 0; i--) {
if (input[i] != '\0') {
result[index] = input[i];
index++;
}
}
//printf("%s\n", &result);
printf("%s => %ld\n", input,strtoul(result,NULL,0));//转换为成无符号长整型
return 0;
}
运行效果
实现方法2
该方法通过数学计算来实现;
#include <stdio.h>
int main() {
unsigned long int input, tmp, result = 0, remainder;
printf("enter an integer: ");
scanf("%ld", &input);
tmp = input;
while (input != 0) {
remainder = input % 10;
result = result * 10 + remainder;
input /= 10;
}
printf("%ld => %ld",tmp, result);
return 0;
}
运行效果