在C语言中,可以使用循环来实现整数的正序和反序输出。下面是一个简单的示例代码:
在这个示例代码中,我们首先利用while循环,从给定的整数num中依次取余数(即取出个位数字),然后打印出来。通过不断的将num除以10,我们可以逐渐将数字的位数去除,直到num变成0为止。这样就实现了整数的正序输出。要实现反序输出,可以先进行正序输出,然后将结果存储在数组中,最后反向遍历数组并输出数字。
定义一个整数类型的输入,然后让它正序输出,倒序输出相信是很多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;
}
如图所示: