C语言编写函数,功能是将正整数x翻转,函数形式为:int reverse(int x);
时间: 2024-02-20 20:57:55 浏览: 126
以下是实现将正整数x翻转的C语言函数:
```c
#include <stdio.h>
int reverse(int x) {
int reversed = 0;
while (x > 0) {
reversed = reversed * 10 + x % 10; // 取出x的个位数并加入reversed
x /= 10; // 去掉x的个位数
}
return reversed;
}
int main() {
int x = 12345;
printf("%d\n", reverse(x)); // 输出翻转后的结果:54321
return 0;
}
```
函数中使用了while循环,每次取出x的个位数并加入reversed中,最后返回reversed即可。需要注意的是,如果x的最后一位是0,翻转后需要去掉前导0。
相关问题
c语言编写函数,功能是将正整数x翻转,函数形式为int reverse (int x)
好的,以下是C语言编写的将正整数x翻转的函数:
```c
int reverse(int x) {
int res = 0;
while (x != 0) {
int pop = x % 10;
x /= 10;
if (res > INT_MAX / 10 || (res == INT_MAX / 10 && pop > 7)) {
return 0;
}
if (res < INT_MIN / 10 || (res == INT_MIN / 10 && pop < -8)) {
return 0;
}
res = res * 10 + pop;
}
return res;
}
```
该函数的主要思路是通过循环和取余操作将输入的正整数x逐位翻转,并将结果存储在变量res中返回。在循环过程中,我们需要判断翻转后的结果是否会溢出,如果会溢出,则返回0。
c语言编写程序,功能是将正整数x翻转,函数形式为int reverse (int x)
好的,以下是C语言编写的将正整数x翻转的程序:
```c
#include <stdio.h>
int reverse(int x) {
int res = 0;
while (x != 0) {
int pop = x % 10;
x /= 10;
if (res > INT_MAX / 10 || (res == INT_MAX / 10 && pop > 7)) {
return 0;
}
if (res < INT_MIN / 10 || (res == INT_MIN / 10 && pop < -8)) {
return 0;
}
res = res * 10 + pop;
}
return res;
}
int main() {
int x;
printf("请输入一个正整数x:");
scanf("%d", &x);
int res = reverse(x);
printf("翻转后的结果为:%d", res);
return 0;
}
```
该程序的主要思路和上面的函数一样,不同之处在于在主函数中加入了输入输出操作,使得用户可以在控制台输入一个正整数x,并输出翻转后的结果。
阅读全文