你让他输出时设一下列宽好了   操作方法已经忘了  是cout后的一个东东

解决方案 »

  1.   

    printf("%n.mf",floatVar);
    n为整数长
    m为小数精度
      

  2.   

    #include <iomanip.h> 
    #include<iostream.h>
    #include<iomanip.H>
    const float m0=0.3f;
    const long Ga=1500,L1=1268,L2=1202,hg=550;void output(float m[]);
    void Stopping(float M,long L); 
    void Fac(float M,long L);
    main()
    {
             long L;
        float m[6]={0.2f,0.3f,0.4f,0.5f,0.6f,0.7f};
        float M;
        cout<<setprecision(2)<<setiosflags(ios::fixed);
        output(m);
        for(int i=0;i<6;i++)
        {
            if(m[i]<m0)
            { 
                L=L2;
                M=m[i];
                Stopping(M,L);
            }
            else
            {
                L=L1;
                M=m[i];
                Stopping(M,L);
            }
        }
        cout<<"\n";
        for(int j=0;j<6;j++)
        {
            if(m[j]<m0)
            { 
                L=L2;
                M=m[j];
                Fac(M,L);
            }
            else
            {
                L=L1;
                M=m[j];
                Fac(M,L);
            }
            
        }
        cout<<endl;
        return 0;
    }    void output(float m[])
    {        
            for(int i=0;i<6;i++)
            {
                cout<<setiosflags(ios::left)<<setw(10)<<m[i];
            }
            cout<<endl;
    }
    void Stopping(float M,long L)
    {
        float Fb,H;    H=(m0-M)*hg;
        Fb=Ga*L*M;
        Fb=Fb/(L+H);
        cout<<setiosflags(ios::left)<<setw(10)<<Fb;
    }
    void Fac(float M,long L)
    {
        float e,H;
        H=(m0-M)*hg;
        e=L/(L+H);
        cout<<setiosflags(ios::left)<<setw(10)<<e;