我创建了一个试卷评分方案表。我的问题是如何仅在第二列中换行并在第三列中输入与该步骤相对应的标记。我读了一些文档,但我不知道该怎么做。下面是我的代码。
\documentclass[12pt,a4paper]{exam}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{array}
\usepackage{tabulary}
\usepackage{multirow}
\usepackage[table]{xcolor}
\begin{document}
{
\setlength{\extrarowheight}{5pt}
\setlength{\tabcolsep}{10pt}
\newcommand{\rr}{\raggedright}
\newcommand{\tn}{\tabularnewline}
\begin{tabular}{|@{}c|l|l|}
\hline
%\rowcolor{gray!20}
\multicolumn{1}{|c}{\textbf {Q.no}}&
\multicolumn{1}{|c}{\textbf{Scheme}}&
\multicolumn{1}{|c|}{\textbf{Mark}}\\\hline \hline
\rule{0pt}{25pt}1 & $\displaystyle{\frac{3x^2-x-2}{x^2-1}=\frac{3x^2-3x+2x-2}{(x-1)(x+1)}}$ [Splitting middle term] & B1 \\ \hline
2 & Row 2 & \\ \hline
3 & Row 3 & \\ \hline
4 & & \\ \hline
\end{tabular}
}
\end{document}
答案1
您已加载tabulary
,但如果您想将表格拉伸至整页,tabularx
这可能是更好的选择。它提供了列说明符X
,用于拉伸列,以便表格可以占据整页。
然后,您希望在单元格中设置换行符。这可以通过使用 轻松实现\newline
。但由于您在单元格内放置了一些公式,最好将其包装在\makecell
宏中。这样,您最终可以使用cellspace
包在单元格内容的上方和下方添加一些间距。如果您不将公式包装在宏内\makecell
,则cellspace
宏可能不会产生预期的效果。
\documentclass[12pt,a4paper]{exam}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{tabularx}
\usepackage{makecell}
\usepackage{cellspace}
\setlength{\cellspacetoplimit}{5pt}
\setlength{\cellspacebottomlimit}{5pt}
\begin{document}
\setlength{\tabcolsep}{10pt}
\newcommand{\rr}{\raggedright}
\begin{tabularx}{\linewidth}{|l|S{X}|l|}
\hline
\textbf{Q.no} &
\textbf{Scheme} &
\textbf{Mark} \\ \hline \hline
1 & \makecell[lt]{$\displaystyle{\frac{3x^2-x-2}{x^2-1}}$ \\
$\displaystyle{=\frac{3x^2-3x+2x-2}{(x-1)(x+1)}}$} & B1 \\ \hline
2 & Row 2 & \\ \hline
3 & Row 3 & \\ \hline
4 & & \\ \hline
\end{tabularx}
\end{document}