分离整数的各个数位(0

编程入门 行业动态 更新时间:2024-10-28 17:16:50

分离<a href=https://www.elefans.com/category/jswz/34/1771264.html style=整数的各个数位(0"/>

分离整数的各个数位(0

描述:

给定一个整数,要求从个位开始分离出它的每一位数字。

 


输入:

输入一个整数,整数在1到100000000之间。

输出:

从个位开始按照从低位到高位的顺序依次输出每一位数字。数字之间以一个空格分开。


样例输入:

12345

样例输出:

5 4 3 2 1

C语言实现:

#include<stdio.h>int main()
{int n,x,y;scanf("%d", &n);x=n;int i;for(i=1;i<=10;i++){if(i==1)   //等于1时直接%10得个位数字{y=x%10;printf("%d ",y);}if(x<10)     //如果x值只有一位则跳出循环break;y=(x/10)%10;      //比如:1234,1234/10=123,123%10=3,依次循环printf("%d ",y);x=x/10;            //下一次所要操作的值,剔除已经求出的“个位”}return 0;}

结果:

 

 

举一反三:

 前面所说的只是倒序输出,现在看一下顺序输出,主要用数组实现。

#include<stdio.h>int main()
{int n,x,y[10];scanf("%d", &n);x=n;int i,sum=0;       //sum用于确定所输入个数位数for(i=0;i<10;i++){if(i==0){y[0]=x%10;          //如果是第一位,则将个位存在数组sum++;}if(x<10)                  //如果x<10则跳出循环break;if(i>0){y[i]=(x/10)%10;           与上面相同的算法x=x/10;sum++;}}int k=sum;for(i=0;i<k;i++)                //循环所属数字的位数次{printf("%d ",y[sum-1]);          //从后向前输出sum--;}return 0;}

结果:

顺序输出一开始用循环i--输出,结果输出不了,用数组输出一定控制好位数,不然会有数据溢出。

更多推荐

分离整数的各个数位(0

本文发布于:2024-02-05 05:24:07,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1673479.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:整数   数位

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!