69,336
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
int main()
{
int num, digit;
int new_num = 0;
scanf("%d", &num);
while (num) {
new_num *= 10;
digit = num % 10;
new_num += digit;
num /= 10;
}
printf("new number = %d\n", new_num);
return 0;
}
参考一下吧
可以实现3位数,甚至多位数的逆序;
int len=0;
char *p=NULL,s[1024]={0};
p=s;
gets(s);
while(*p)
{
len++;
}
while (len--)
{
printf("%c",*p--)
}
#include<stdio.h>
#include <string.h>
int main()
{
char a[1024];
scanf("%s", a);
strrev(a);
printf("%s\n",a);
return 0;
}
如果是数字版本,不介意翻转后0被清掉,则可以用下面的,同样不限于3位数
#include<stdio.h>
int main()
{
unsigned int a=0, b=0;
scanf("%u", &a);
for (b = 0; a; a /= 10)
b = b * 10 + (a % 10);
printf("%u\n",b);
return 0;
}