Almost always no. I use scanf only for little utility / fun programs.
You want fgets(), because it takes away the "brittleness" of scanf *and* the newline char whenever you hit the enter key with entry of some value from the user.
Scanf() is definitely "down and dirty", and has proven to be WAY down and VERY dirty, indeed.
Vs is good to start with