This basically says that y is a specific instance of the coefs structure.
But still, in this case it just means that throughout the program you need to put "y.a" rather than just "a", and doesn't seem to offer any great benefit.
There are a few syntax errors throughout the code.
This line should not end in a semicolon: for (int i = 1; i <= 10; ++i);
... but on the other hand, I'm not sure why it's there at all.
The "if" statements should group the statements which depend on it using braces like this:
1 2 3 4 5 6 7 8 9 10
if (condition)
{
print first root;
print second root;
}
elseif (condition)
{
etc.
}
etc.