C语言程序,用户输入任意整数(小于10位),输出该数的逆序数。 例如输入123456789,输出987654321。
时间: 2024-02-13 16:02:37 浏览: 87
好的,下面是一个简单的C语言程序来实现您的要求:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char num[11];
int len, i;
printf("请输入一个整数(小于10位):");
scanf("%s", num);
len = strlen(num);
printf("逆序数为:");
for (i = len - 1; i >= 0; i--) {
printf("%c", num[i]);
}
printf("\n");
return 0;
}
```
程序首先提示用户输入一个整数,然后通过`scanf`函数读取输入的整数,将其存储在一个字符串数组中。程序使用`strlen`函数获取输入整数的长度,并使用一个循环逆序输出整数中的每个数字。
相关问题
C语言用户输入任意整数(小于10位),输出该数的逆序数。例如输入123456789,输出987654321。
在C语言中,为了实现用户输入整数的逆序并输出,我们可以使用`scanf`读取用户输入,然后逐位进行存储和反转。下面是一个简单的示例:
```c
#include <stdio.h>
#include <string.h> // 使用strlen函数获取字符串长度
int reverseInteger(int num) {
char reversedStr[10]; // 存储逆序后的字符串
int index = strlen(reversedStr); // 初始化反转字符串的索引
// 反转整数每一位存入reversedStr
while (num != 0) {
reversedStr[index] = num % 10 + '0'; // 通过'0'转换为字符
num /= 10; // 移除最低位
index--;
}
// 将字符串连接成整数并返回
reversedStr[index + 1] = '\0'; // 添加字符串结束符
int reversedNum = atoi(reversedStr); // 转换回整数
return reversedNum;
}
int main() {
int inputNumber;
printf("请输入一个小于10位的整数: ");
scanf("%d", &inputNumber);
int reversed = reverseInteger(inputNumber);
printf("逆序后的数是: %d\n", reversed);
return 0;
}
```
在这个代码里,我们首先定义了一个字符串`reversedStr`来存储逆转的数字,然后在`reverseInteger`函数中,对输入的数字不断取模10并将结果添加到字符串最后。当数字减半为0时,表示所有位都已处理完毕,此时我们将其转换回整数并返回。
用户输入任意整数(小于10位),输出该数的逆序数。例如输入123456789,输出987654321C语言的代码
以下是C语言实现该功能的代码:
```c
#include <stdio.h>
int main() {
int num, reverse_num = 0;
printf("请输入一个整数:");
scanf("%d", &num);
while (num) {
reverse_num = reverse_num * 10 + num % 10;
num /= 10;
}
printf("该数的逆序数为:%d", reverse_num);
return 0;
}
```
运行结果如下:
```
请输入一个整数:123456789
该数的逆序数为:987654321
```
阅读全文