zoukankan      html  css  js  c++  java
  • 25.(需要好好研究研究)输入任意的正整数,将其各位分离出来;求它是几位数,求各位上数字的和,求其逆值

    #include<iostream>
    using namespace std;
    
    int main()
    {
        int m,n,i,j=1,k=0,a[20],x,y;
        cout<<"请输入一个整数:";
        cin>>m;//输入的数为m
        y=m;//先将m赋值给y,将原始输入的数保护起来
        for(i=1;;i++)//中间的判断条件可以不要,就变成了死循环
        {
            j*=10;
            n=m/j;
            a[i]=n;
            k++;//用于记录有几位数
            
            if(n<1)//循环退出条件
            {
                break;
            }
        }
        int b=1,c,d=0;
        for(i=1;i<=k;i++)
        {
            b*=10;
            //cout<<b<<endl;
        }
        cout<<"你输入的数字各位分别是:";
        for(i=k;i>0;i--)
        {
            b=b/10;
            c=m/b;
            m=m-c*b;
            d+=c;
            cout<<c<<"  ";
        }
        cout<<endl;
        cout<<"你输入的数字是"<<k<<"位数
    ";
        cout<<"各位上的数字之和为:"<<d<<endl;
        x=0;
        do{
            x=x*10+y%10;
            y=y/10;
        }while(y!=0);
        cout<<"逆序输出为:"<<x;
        cout<<endl;
    
        return 0;
    }

     我的做法:

    #include<iostream>
    using namespace std;
    
    int main()
    {
        int n,p,q=1;
        int k=0,temp=1;
        int sum=0,sum1=0;
        int a[20];
        cout<<"please input an number : "<<endl;
        cin>>n;
    
        for(int i=0;i<20;i++)
        {
            a[i]=0;
        }
        for(int j=0;j<=20;j++)//这里错得刻骨铭心。。。把条件写成j<=n了
        {
            if(n!=0)
            {
                p=n%10;
                a[j]=p;
                cout<<p<<" "<<endl;
                n=n/10;
                k++;
            }
        }
        for(int k=0;k<=20;k++)
        {
            sum+=a[k];
        }
        for(int m=1;m<=k;m++)
        {
            temp*=10;
            a[k-m]*=(temp/10);
            sum1+=a[k-m];
        }
        cout<<"它是"<<k<<"位数"<<endl;
        cout<<"它各位数字之和为:"<<sum<<endl;
        cout<<"其逆值为:"<<sum1;
    
        return 0;
    }
  • 相关阅读:
    四则运算
    四则运算二
    学习进度条
    四则运算一
    课堂测试七
    问题与思考6
    问题与思考5
    问题与思考04
    Android SDK 目录说明
    如何判断视频的比例(4:3/16:9)和分辨率?
  • 原文地址:https://www.cnblogs.com/jixiaowu/p/3895142.html
Copyright © 2011-2022 走看看