多项选择题的简单答案

多项选择题的简单答案

我正在写一个问题,我有类似这样的内容:

\begin{enumerate}
  \item Question 1 
    \begin{enumerate}
      \item Choice 1
      \item Choice 2
    \end{enumerate}
\end{enumerate}

现在我想展示这个问题的解决方案。有没有简单的方法可以做到这一点?我只想要一个简单的东西;使用包会是一种开销。

我尝试\label{answer:q}在之后添加Choice 2,但是当我使用时,\ref{answer:q}它给了我1b第二个选择,1这里指的是父级\item,我可以将其限制为仅让子级\item获取b吗?

答案1

您可以重新定义\p@enumii(使用的前缀):

\documentclass{article}          

\makeatletter
\renewcommand\p@enumii{}
\makeatother

\newcommand\Ans[1]{\par The answer is~\ref{#1}.}

\begin{document}

\begin{enumerate}
  \item Question 1 
    \begin{enumerate}
      \item Choice 1
      \item Choice 2\label{test}
    \end{enumerate}
\end{enumerate}
\Ans{test}

\end{document}

在此处输入图片描述

enumitem包中您可以为选择定义一个专用列表,并且可以轻松自定义用于交叉引用的标签和字符串:

\documentclass{article}          
\usepackage{enumitem}

\newlist{choices}{enumerate}{1}
\setlist[choices]{label=(\alph*),ref=(\alph*)}

\newcommand\Ans[1]{\par The answer is~\ref{#1}.}

\begin{document}

\begin{enumerate}
  \item Question 1 
    \begin{choices}
      \item Choice 1
      \item Choice 2\label{test}
    \end{choices}
\end{enumerate}
\Ans{test}

\end{document}

在此处输入图片描述

相关内容