%%
%% The LaTeX Companion, 2ed (second printing August 2004)
%%
%% Example 5-3-1 on page 250.
%%
%% Copyright (C) 2004 Frank Mittelbach, Michel Goossens,
%%    Johannes Braams, David Carlisle, and Chris Rowley
%%
%% It may be distributed and/or modified under the conditions
%% of the LaTeX Project Public License, either version 1.3
%% of this license or (at your option) any later version.
%%
%% See http://www.latex-project.org/lppl.txt for details.
%%

\documentclass{ttctexa}
\pagestyle{empty}
\setcounter{page}{6}
\setlength\textwidth{348.0pt}
\StartShownPreambleCommands
\usepackage{array,calc}    \newlength\mylen
\newenvironment{tabularc}[1]
 {\setlength\mylen
            {\linewidth/(#1)-\tabcolsep*2-\arrayrulewidth*(#1+1)/(#1)}%
  \par\noindent               % new paragraph, flush left start
  \begin{tabular*}{\linewidth}%
    {*{#1}{|>{\centering\hspace{0pt}} p{\the\mylen}}|}}
{\end{tabular*}\par}
\StopShownPreambleCommands
\begin{document}
\begin{tabularc}{3}
\hline
Material in column one & column two & This is column three
\tabularnewline\hline
\empty
Column one  again      &
and column two         &
This is column three   \tabularnewline\hline
Once more column one   &
column two             &
Last time column three \tabularnewline\hline
\end{tabularc}
\end{document}