zoukankan      html  css  js  c++  java
  • 分离非负整数

    (1 )分离一个三位非负整数

    设x为一个整型变量,从键盘输入x的值( 三位,例如567 ),   然后将x的百、十、个位数分离出来,分别保存到整型变量a、b、c中,   然后将a、b、c进行输出。

    /*
       设x为一个整型变量,从键盘输入x的值( 三位,例如567 ),
       然后将x的百、十、个位数分离出来,分别保存到整型变量a、b、c中,
       然后将a、b、c进行输出。
    */
    #include <iostream>
    using namespace std;
    int main()
    {
     int x; //x为整型变量
     cout<<"请输入一个三位整数:";
     cin>>x; //从键盘输入x
     int a,b,c; //a存放x的百位,b存放x的十位,c存放x的个位
     a=x/100;
     b=x%100/10;
     c=x%10;
     cout<<x<<" 的百位、十位、个位分别为:"<<a<<" "<<b<<" "<<c<<endl;
     return 0;
    }

    (2)分离一个任意长度的非负整数(从低位到高位--用循环实现)

    /*
    x为任意整数,从键盘输入一个整数,由低位到高位输出x的各位数。
    方法:用循环实现
    */
    #include <iostream>
    using namespace std;
    int main()
    {
        int x;    //x为整型变量
        cout<<"请输入一个非负整数:";
        cin>>x;   //从键盘输入x
        while(x<0)  //循环输入直到输入的x>=0
        { 
          cout<<"您输入的数是负数,请重新输入:";
          cin>>x; 
        }
        cout<<"从低位到高位依次输出为:";
        if(x==0)
            cout<<x;
        else
        {
            while(x>0)  //从低位到高位循环输出
            {
                cout<<x%10<<" ";        
                 x=x/10;
            }
        }
        cout<<endl;
        return 0;
    }

    (3)分离一个任意长度的非负整数(从高位到低位--用循环实现)

    /*
    x为任意整数,从键盘输入一个整数,由高位到低位输出x的各位数。
    方法:用循环实现
    方法中要用到指数函数double pow(double x,double y);
     函数结果是求以x为底、以y为指数的结果,注意结果为double类型
    */
    #include <iostream>
    #include <cmath>
    using namespace std;
    int main()
    {
        int x;    //x为整型变量
        int a;
        cout<<"请输入一个非负整数:";
        cin>>x;   //从键盘输入x
        while(x<0)  //循环输入直到输入的x>=0
        { 
          cout<<"您输入的数是负数,请重新输入:";
          cin>>x; 
        }
        a=x;
        int length=1; //length记录输入的非负整数的长度
        while((a/10)>0)  //从低位到高位循环输出
        {
                length++;        
                 a=a/10;
        }
        cout<<"输入的非负整数长度为:"<<length<<endl;
        length--;
        cout<<"从高位到低位依次输出为:";
        if(x==0)
            cout<<x;
        else
        {
            while(x>0)  //从低位到高位循环输出
            {
                a=(int)pow(10,length--); // pow(10,length)结果是double类型
                cout<<x/a<<" ";        
                 x=x%a;
            }
        }
        cout<<endl;
        return 0;
    }

  • 相关阅读:
    宏开发:excel中添加拼接行
    windows消息简单应用实例
    C#用到windows 消息列表Message类MSG的id代号
    在C#中winform程序中应用nlog日志工具
    sql语句中生成0-10随机数
    div+css布局使用inline-block
    linux在nginx中服务器集群用到session的注意事项
    linux 安装php时不安装mysql客户端或者服务端
    centos 配置apache注意事项
    Apache服务器不能启动查看启动错误信息
  • 原文地址:https://www.cnblogs.com/beautiful-code/p/5239497.html
Copyright © 2011-2022 走看看