我怎样才能让这张桌子正常工作?谢谢
\documentclass[a4paper,12pt]{report}
\usepackage{amsmath,bm}
\usepackage{siunitx,booktabs}%for table decimals number
\begin{document}
\begin{table}[!htbp]
\centering
\begin{tabular}{>{}l
S[table-format=-1.2(2)
*{2}S[table-format=-1.2(2)]
S[table-format=4.0] }
\toprule
\textbf{Res.} & {\textbf{Expt.(a)}} & {\textbf{Expt.(b)}} & {\textbf{Theor.}} \\
\midrule
1 & -0.57 & -0.23 & \\
4 & 1.90 & 1.97(10) & 1.98 \\
\bottomrule
\end{tabular}
\caption [}}\label{}
\end{tabular}
\end{table}
\FloatBarrier
\end{document}
答案1
示例文件包含各种语法错误。修复后的示例:
\documentclass[a4paper,12pt]{report}
\usepackage{siunitx,booktabs}
\begin{document}
\begin{table}[!htbp]
\centering
\begin{tabular}{
>{}l
S[table-format=-1.2(2)]
*{2}{S[table-format=-1.2(2)]}
% S[table-format=4.0] % unused
}
\toprule
\textbf{Res.}
& {\textbf{Expt.\,(a)}}
& {\textbf{Expt.\,(b)}}
& {\textbf{Theor.}} \\
\midrule
1 & -0.57 & -0.23 & \\
4 & 1.90 & 1.97(10) & 1.98 \\
\bottomrule
\end{tabular}
\caption{A table with numbers}\label{tab:numbers}
\end{table}
\end{document}
列类型没有改变,因为实际表可能更大,并且其他行的值未知。