怎么提取输入的一组方程中的系数

如题,怎么从输入的方程中提出相应的系数
如输入x+2y=3时
怎么提取出相应的系数a=1,b=2,c=3


#include "stdio.h"
#include "string.h"
int main()
{
    char str[] = "x+2y=3";
    int num[3] = {0};
    if(str[0] == 'x')
    {
        num[0] = 1;
        sscanf(str, "x+%dy=%d", &num[1], &num[2]);
    }else{
        sscanf(str, "%dx+%dy=%d", &num[0],&num[1], &num[2]);
    }
    
    printf("a = %d b = %d c = %d\n",num[0], num[1], num[2]);
    return 0;
}