Here is my \question macro that provides room for a question and separately room for its scale without relying on a table. This is an advantage when you have questions over multiple pages; plus, you still can use \subsection and the like to structure your document. Below is the macro and how I use it:
\def\question#1\par#2\par{\hbox to \hsize
{\vbox{\hsize=0.72\hsize #1\dotfill}\quad#2\hfil}\medskip\goodbreak}
Example use:
\question Would you come to another workshop?
\par\fiveboxes{no}{}{}{}{yes}
The \fiveboxes macro (cf. below) provides five check boxes where the leftmost one is labeled with no and rightmost one is labeled with yes.
For free-text questions and answers I defined the following macro
\def\freequestion#1\par{#1\par\nobreak
\begingroup\nobreak
\advance\leftskip by 2pc
\hrule width 0pt height 1.7\baselineskip\hrulefill
\hrule width 0pt height 1.7\baselineskip\hrulefill
\par
\medskip
\endgroup
}
which is used like this:
\freequestion Please share any other remarks or ideas for improving the
workshop or this survey: \par
Note the use of \par to separate arguments such that I don't have to use braces. But of course, classic arguments could be used as well.
Below, similar macros are seen in action.

For completeness, here are my various macros for boxes, including \fiveboxes:
\def\boxit#1{\hbox{\lower0.7ex\vbox{\hrule\hbox{\vrule\kern1pt
\vbox{\kern1pt\hbox to 1.4em
{\small\strut\hfil #1\hfil}\kern1pt}\kern1pt\vrule}\hrule}}}
\def\fiveboxes#1#2#3#4#5{\hbox to\scalewidth
{\boxit{#1}\hfil\boxit{#2}\hfil\boxit{#3}\hfil%
\boxit{#4}\hfil\boxit{#5}}}
In the example above the scale is typeset above the boxes without taking up vertical space. This is a little more involved:
\question The group is a good mix in terms of expertise and interests.
\par\xagree
\newdimen\scalewidth
\scalewidth=0.3\hsize
\def\xagree{\xscale{strongly disagree}{agree completely}}
\def\boxes{\fiveboxes{}{}{}{}{}\ignorespaces}
\def\xscale#1#2{%
\setbox0=\hbox{\boxes}%
\setbox1=\hbox to \wd0{\small\strut\hfill #2 $\to$}%
\setbox2=\hbox to \wd0{\small\strut $\gets$ #1 \hfill}%
\vbox{\vbox to 0pt{\vss\box1\box2\kern2pt}\vbox{\box0}}}
Obviously this is all very PlainTeX-y and I'm not really an expert, so comments are welcome.
You can find a full example on GitHub Gist
$\circ$, ...) See also this question http://tex.stackexchange.com/q/9975/2975 – Martin Scharrer Feb 17 '11 at 14:48longtableorsupertabular. – Martin Scharrer Feb 17 '11 at 16:14