
8个回答
展开全部
int main()
{
int i=12345; //定义一个12345的整数
int temp=0;//temp作为存储的值
while(i!=0){
temp = temp*10 + i%10;
i/=10;
} //反序取出来
printf("%d",temp); //打印
return 0;
}
扩展资料:
反之正序输出
输入 : 12345
输出 :"12345"
char str(int x)
{
char a[100];//存放整数转换过来的字符
int i; //计数
if(x/10!=0)
str(x/10);
if(x>=0)
a[i]='0'+x%10; //整数转换成字符存储,字符都是以整数形式存储
else
a[i]='0'+(-x)%10;//整形包括负数
printf("%c",a[i++]);
}
int main()
{
int i;
printf("请输入一个整数:\n");
scanf("%d",&i);
str(i);
return 0;
}
展开全部
可以通过数组保存正整数的从最低位到最高位的每一位数值,之后输出数组元素即可。
具体实现方法可以参考如下程序:
#include<stdio.h>
void main()
{
int num, a[10], i, k=0;
printf("请输入一个正整数:");
scanf("%d", &num);
// 分离正整数的每一位,并存放到数组a中
while(num>0)
{
a[k++] = num%10; // 将正整数的最低位保存到数组a中
num /= 10; // 将正整数的次低位变为最低位
}
// 输出数组的每个元素,即实现逆序输出正整数
for(i=0; i<k; i++)
printf("%d", a[i]);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
假设输入的数为n,逆序输出的是converse用以下循环就可以了
for(i=n;i>0;)
{
m=i%10;
i/=10;
converse=m+converse*10;
}
具体代码
#include<stdio.h>
#include<stdlib.h>
int main()
{
int n,i,m,converse;
scanf("%d",&n);
i=n;converse=0;
while(i>0)
{
m=i%10;
i/=10;
converse=m+converse*10;
}
printf("%d",converse);
}
for(i=n;i>0;)
{
m=i%10;
i/=10;
converse=m+converse*10;
}
具体代码
#include<stdio.h>
#include<stdlib.h>
int main()
{
int n,i,m,converse;
scanf("%d",&n);
i=n;converse=0;
while(i>0)
{
m=i%10;
i/=10;
converse=m+converse*10;
}
printf("%d",converse);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
main()
{
int i,j;
scanf("%d",&i);
j=i%10;
printf("%d",j);
while(j>0)
{
i/=10;
j=i%10;
printf("%d",j);
}
}
main()
{
int i,j;
scanf("%d",&i);
j=i%10;
printf("%d",j);
while(j>0)
{
i/=10;
j=i%10;
printf("%d",j);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{int a,b;
scanf("%d",&a);
b=a%10;
printf("%d ",b);
a=a/10;
printf("\n");
}
void main()
{int a,b;
scanf("%d",&a);
b=a%10;
printf("%d ",b);
a=a/10;
printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |