1191-C语言实验-整数位

来源:互联网 发布:安能久事笔砚间乎翻译 编辑:程序博客网 时间:2024/06/03 13:06

Problem Description

输入一个不多于5位的正整数,要求:
(1)求出它是几位数;
(2)分别输出每一位数字;
(3)按逆序输出各位数字。

Input

输入一个不多于5位的正整数。

Output

输出数据有3行,第一行为正整数位数,第二行为各位数字,第三行为逆序的各位数字。

Example Input

123

Example Output

31 2 33 2 1
这道题可以说比较简单,但本人水平太低,脑子还浆糊了,第一天没做出来。。。
思路:
1、一个while循环把输入的n值一位一位的分解开。
2、定义一个count,每次++,循环外输出就可知道这是这是一个几位数。
3、定义一个数组a[]存分开的数字,count是几,就说明这个数组是一个存了几位数的数组,随后从1到count正序逆序分别输出即答案。
#include<stdio.h>int main(){int i,a[100],n,x,y,count=0;scanf("%d",&n);while(n>0){x=n%10;y=n/10;n=y;count++;a[count]=x;}printf("%d\n",count);for(i=count;i>1;i--)printf("%d ",a[i]);printf("%d\n",a[1]);for(i=1;i<count;i++)printf("%d ",a[i]);printf("%d\n",a[count]);}
原创粉丝点击