c语言中如何实现输入一个整数实现倒序输出
1个回答
展开全部
定义一个整数类型的输入,然后让它正序输出,倒序输出相信是很多C语言初学入门一定会遇到的经典题目,下面就是我对整数的正序和倒序输出一点小小的总结.
1.
反序(倒序)输出
反序输出常用的思路就是按位取余,把取出来的值进行循环保存。
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;
}
如图所示:
2,
正序输出
正序输出会用在整形变量正序输出转换成对应的字符数组,或者倒过来.常用思路就是定义一个函数,在函数内递归取余调用自身,实现功能。
输入
:
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;
}
如图所示:
1.
反序(倒序)输出
反序输出常用的思路就是按位取余,把取出来的值进行循环保存。
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;
}
如图所示:
2,
正序输出
正序输出会用在整形变量正序输出转换成对应的字符数组,或者倒过来.常用思路就是定义一个函数,在函数内递归取余调用自身,实现功能。
输入
:
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;
}
如图所示:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询