图片说明
#include<iostream>
using namespace std;
char c;
char d;
int a[100] = {}, length;
double x = 0, ooo, mid, sum = 0;
int main()
{
length = 1;
ooo = 1;
c = getchar();
while (c != '=')
{
if (c == '-')
{
length++;
ooo = -1;
}
if (c == '+')</iostream>

    {
        ooo = 1;
        length++;
    }
    if (c >= '0'&&c <= '9')
    {
        if (a[length] == 0)
            a[length] = (c - '0')*ooo;
        else a[length] = a[length] * 10 + (c - '0')*ooo;

    }
    if (c >= 'a'&&c <= 'z')
    {
        d = c;
        if (a[length] != 0)
        {
            x += a[length];
            a[length] = 0;
        }
        else x += ooo;
        --length;
    }


    c = getchar();
    }
mid = length;
length++;
c = getchar();
ooo = 1;
while (c != '\n')
{
    if (c == '-')
    {
        ooo = -1;
        length++;
    }
    if (c == '+')
    {
        ooo = 1;
        length++;
    }
    if (c >= '0'&&c <= '9')
    {
        if (a[length] == 0)
            a[length] = (c - '0')*ooo;
        else a[length] = a[length] * 10 + (c - '0')*ooo;
    }
    if (c >= 'a'&&c <= 'z')
    {
        d = c;
        if (a[length] != 0)
        {
            x-= a[length];
            a[length] = 0;
        }
        else x -= ooo;
        length--;
    }
    c=getchar();
}
for (int i = 1; i <= length; i++)
{
    if (i <= mid)
        sum -= a[i];
    else sum += a[i];

}
if (sum == 0)
{
    printf("%c", d);
    printf("=0.000");
}
else printf("%c=%.3lf", d, sum / x);
return 0;

}

主要慢慢想,用数组存放出现的非未知数的数