一个关于单位换算的程序,请大佬帮帮忙

第一个程序就是长度的单位换算
输入1m,然后等于39.37英尺,3.2808英里,0.0006英里

第二个程序是重量的单位换算
输入1g,等于0.03527盎司,0.0022磅

再输入0,程序终止

图片说明

#include <iostream>
#include <string>
#include <iomanip>

using namespace std;
int main1()
{
    double r[] = {1,39.37,3.2808,0.0006};
    string u[] = {"m","inch","feet","mile"};
    cout << "unit\t";
    for (int i = 0; i < 4; i++)
        cout << u[i] << "\t";
    cout << endl;
    for (int i = 0; i < 4; i++)
    {
        for (int j = 0; j < 5; j++)
        {
            if (j == 0)
                cout << std::fixed << u[i] << "\t";
            else
                cout << std::fixed << r[j - 1] / r[i] << "\t";
        }
        cout << endl;
    }
    return 0;
}

int main2()
{
    double r[] = {1,0.03527,0.0022};
    string u[] = {"g","once","lb"};
    cout << "unit\t";
    for (int i = 0; i < 3; i++)
        cout << u[i] << "\t";
    cout << endl;
    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 4; j++)
        {
            if (j == 0)
                cout << std::fixed << u[i] << "\t";
            else
                cout << std::fixed << r[j - 1] / r[i] << "\t";
        }
        cout << endl;
    }
    return 0;
}

int main()
{
    main1();
    main2();
    return 0;
}

图片说明

之前可能搞错了题目
看这个

#include <iostream>
#include <string>
#include <iomanip>

using namespace std;
int main()
{
    double r[] = {1,39.37,3.2808,0.0006};
    string u[] = {"m","inch","feet","mile"};
    float m;
    cin >> m;   
    for (int i = 1; i < 4; i++)
    {
        cout << m * r[i] << u[i] << " ";
    }
    cout << endl;
    cin.get();
    double r1[] = {1,0.03527,0.0022};
    string u1[] = {"g","once","lb"};
    float g;
    cin >> g;   
    for (int i = 1; i < 3; i++)
    {
        cout << g * r1[i] << u1[i] << " ";
    }
    cout << endl;
    cin.get();
    while (cin.get() != '0');
    return 0;
}

图片说明