c语言将一个三位整数倒序
时间: 2023-05-24 22:03:48 浏览: 93
A:以下是C语言代码将一个三位整数倒序:
```
#include <stdio.h>
int main() {
int num, reversed_num = 0;
printf("请输入一个三位整数:");
scanf("%d", &num);
while (num != 0) {
reversed_num = reversed_num * 10 + num % 10;
num /= 10;
}
printf("倒序后的数字为:%d", reversed_num);
return 0;
}
```
相关问题
用c语言编写程序从键盘输入一个三位整数,将其个位、十位、百位倒序生成一个数输出,比如输入123,输出321
在C语言中,我们可以创建一个函数来接收用户输入的三位数,然后通过位操作将其个位、十位、百位分开,分别存入临时变量,最后按照新的顺序组合成新的数字。以下是示例代码:
```c
#include <stdio.h>
#include <string.h> // 需要包含这个头文件来使用itoa和atol
// 将十进制整数转换为字符串
char* int_to_str(int num) {
char str[4]; // 容纳最多四位数字,包括前导零
sprintf(str, "%d", num);
return str;
}
// 将字符串转换回整数
int str_to_int(char* str) {
return atoi(str);
}
// 逆序一个整数
int reverse_int(int num) {
int reversed = 0, remainder;
while (num != 0) {
remainder = num % 10; // 取余得到个位
reversed = reversed * 10 + remainder; // 乘以10并加上当前个位
num /= 10; // 整除移去个位
}
return reversed;
}
int main() {
int input_num;
printf("请输入一个三位整数:");
scanf("%d", &input_num);
if(input_num < 100 || input_num > 999) { // 检查输入是否为三位数
printf("错误:输入不是三位数!\n");
} else {
int reversed = reverse_int(input_num);
char* str_reversed = int_to_str(reversed);
printf("逆序后的数为:%s\n", str_reversed);
free(str_reversed); // 释放内存
}
return 0;
}
```
在这个程序中,首先将输入的三位数反转,然后将结果打印出来。注意这里使用了`itoa`和`atoi`函数来进行字符串和整数之间的转换,这两个函数在`<string.h>`头文件中。
用C语言输入一三位正整数 逆序输出
好的,以下是C语言代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char num[4];
printf("请输入一个三位正整数:");
scanf("%s", num);
int len = strlen(num);
for (int i = len - 1; i >= 0; i--) {
printf("%c", num[i]);
}
printf("\n");
return 0;
}
```
这里使用了字符数组来存储输入的数字,并使用`strlen`函数获取数字的长度,然后倒序遍历输出每一位数字。
阅读全文