【问题描述】给一个不多于5位的正整数,要求:分别打印出每一位数字,并求出它是几位数。【输入形式】输入一个不多于5 位的正整数。【输出形式】从高位到低位输出各位的数字,再输出总的位数。

【问题描述】给一个不多于5位的正整数,要求:分别打印出每一位数字,并求出它是几位数。

【输入形式】输入一个不多于5 位的正整数。

【输出形式】从高位到低位输出各位的数字,再输出总的位数。

【样例输入】6408

【样例输出】

6 4 0 8

4

【样例说明】有可能是1位数,也有可能是5位数哦~,比如25478

【评分标准】5组测试数据,全对则得分。请注意每个数字之间有空格,总位数在第二行显示。

​
​
//方法一:
/*
#include
using namespace std;
#include
int main()
{
    char arr[5];
    memset(arr,0,sizeof(arr));//初始化所有字符为空字符
    cin>>arr;
    for(int i=0;i<5;i++)
    {
        if(arr[i]!='\0')
            cout<
using namespace std;
#include
int main()
{
    int n=1;
    int data;
    int m,i;
    cin>>data;//以输入6408为例
    while(data>=pow(10,n))//跳出循环时,i等于数据的位数
        n++;
    int arr[n];//设置一个数组,储存每次计算出来的最后一位,实现类似栈的效果
    for(i=0;i=0;i--)//从数组最后一位开始输出,得到的是6 4 0 8
        cout<
using namespace std;
int main()
{
    int i,data;
    cin>>data;
    if(data<10)
    {
        cout<

你可能感兴趣的:(算法,蓝桥杯)