Mathematica, 163 bytes
{a,b}=FromDigits/@InputString[]~StringSplit~"/";r=Range[b-1];""<>Riffle[#~ToString~InputForm&/@(#[DeleteCases[#2[a#@DeleteCases[#2[a/b*r]/r,a/b]]&@@@b]&@@@{{Max,Floor},{Min,Ceiling}}),""]" "]
This is severely limited by the input/output requirement as user input and strings. Dealing with strings is really cumbersome in Mathematica (at least when you want to golf). Doing this the natural way in Mathematica, (using just integers and rationals) I'd probably get this down to 50% of the size.
It can do 6-digit numbers in a few seconds on my machine.
Slightly more readable (not really ungolfed though):
{a, b} = FromDigits /@ InputString[]~StringSplit~"/";
r = Range[b - 1];
"" <> Riffle[#~ToString~
InputForm & /@ (#[DeleteCases[#2[a/b*r]/r, a/b]] & @@@ {{Max,
Floor}, {Min, Ceiling}}), " "]
For the fun of it, doing this "the natural way", i.e. as a function taking numerator and denominator and returning two rationals, this is only 84 characters (so my 50% estimate was actually pretty close):
f[a_,b_]:=#@DeleteCases[#2[a/b*(r=Range[b-1])]/r,a/b]&@@@{{Max,Floor},{Min,Ceiling}}