• 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;
    }
  • 相关阅读:
    HTML快速复习
    jQueryAjax
    jQuery工具类函数
    jQuery常用插件
    jQuery动画
    CodeBlock 使用TextOut出错
    Java数组与vector互转
    C++字符串常量
    Android 开发必备
    Java 修改Windows注册表,以实现开机自启动应用程序。
  • 原文地址:https://www.cnblogs.com/jixiaowu/p/3895142.html
Copyright © 2020-2023  润新知