Eu estou fazendo minha contribuição para a Classe Exam para quem quiser fazer prova com gabarito no final. Futuramente faço comentários.
\documentclass[addpoints, 12pt, answers, a4paper]{exam}
%Pacotes Utilizados
\usepackage[utf8]{inputenc}
\usepackage[portuguese]{babel}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
%\usepackage[export]{adjustbox}
%\usepackage{subcaption}
\usepackage{wrapfig}
\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry}
\usepackage{color}
%\usepackage{amssymb}
%\usepackage{amsmath}
%\usepackage{amsthm}
%\usepackage{amsfonts}
\usepackage{amssymb, amsmath, amsthm, amsfonts}
\usepackage{multicol}
\usepackage{answers}
%Estilo de Página
%\pagestyle{headandfoot}
\pagestyle{empty}
%\firstpageheader{} {} {}
%\firstpageheadrule
%\firstpagefooter{}{}{}
%\firstpagefootrule
%\runningheader{}{}{}
%\runningheadrule
%\runningfooter{}{}{}
%\runningfootrule
%Estilo de Pontuação
%\pointsinmargin
%\nopointsinmargin
%\pointsinrigthmargin
%\nopoinsinrigthmargin
%\pointsdroppedatright %use \droppoints no final da questão para funcionar
%\half
%\usehorizontalhalf
%\uselantedhalf
%\bracketedpoints %Substitui () para [].
%\nobracketedpoints
%\boxedpoints %Substitui () para um quadrado.
%\noboxedpoints
%Substitui a palavra points por pontos.
\pointpoints{ponto}{pontos}
%Substitui a palavra points por %
%\pointname{\%}
%\marginpointname{\%}
%\bonuspointpoins{ponto (bônus)}{pontos (bônus)}
%Formatação do ponto.
%\pointformat{}
%\bonuspointformat{}
%Mostrar o ponto.
%\thepoints
%Total de pontos.
%\totalpoints
%\droptotalpoints
%\droptotalbonuspoints
%\totalformat{Questão \thequestion: \totalpoints}
\totalformat{\fbox{Total:\totalpoints}} %use \droppoints
%Mostrar a questão.
%\thequestion
%\qformat{}
%\qformat{\textbf{\large{Questão} \thequestion} \quad (\thepoints)\hfill}
%\renewcommand{\thequestion}{\Alph{question}} %\arabic \alph \Alpha \roman \Roman \geeknum
\renewcommand{\choicelabel}{\thechoice)}
\renewcommand{\thechoice}{\alph{choice}}
%\renewcommand{\questionshook}{\setlength{\leftmargin}{0pt}}
\renewcommand{\choiceshook}{\setlength{\leftmargin}{0pt}}
%\newcommand{\questionshook}{}
%\newcommand{\partshook}{}
%\newcommand{\subpartshook}{}
%\newcommand{\subsubpartshook}{}
%\newcommand{\choiceshook}{}
%\newcommand{\checkboxeshook}{}
%\question ou \bonusquestion
%\titledquestion ou \bonustitledquestion
%\part ou \bonuspart
%\subpart ou \bonussubpart
%\subsubpart ou \bonussubsubpart
%\numquestions
%\numparts
%\numsubparts
%\numsubsubparts
%\numpoints
%\numbonuspoints
%Solução
\renewcommand{\solutiontitle}{\noindent \textbf{Solução:}\enspace}
%\renewcommand{\solutiontitle}{\noindent \textbf{Solução:}\par \noindent}
%\SolutionEmphasis{\color{red}}
%\begin{solution}
%\begin{solutionorbox} no lugar de \makeemptybox{1in}
%\begin{solutionorlines} no lugar de \fillwithlines{1in}
%\begin{solutionordottedlines} no lugar de \fillwithdottedlines{1in}
%\begin{solutionorgrid} no lugar de \fillwithgrid{1in}
%Múltipla escolha
%\begin{choices}
%\begin{oneparchoices}
%\begin{checkboxes}
%\begin{oneparcheckboxes}
%\choice
%\correctchoice
%\correctchoiceemphasis{}
%Linha
%Necessário classe exam.cls
%\fillin[resposta]
%\setlength\fillinlinelength{1in} %tamanho da linha
%\setlength\linefillheight{0.25in} %distância entre linhas
%\setlength\linefillthickness{0.1pt}
%\answerline[resposta]
%\setlength\answerskip{2ex} %espaçamento da pergunta
%\setlength\answerlinelength{1in} %tamanho da linha
%Verdadeiro ou Falso
%Customizável
\newcommand{\vf}[1][{}]{( \fillin[#1][0in] )}
\vqword{Questão}
\vpgword{Página}
\vpword{Valor}
\vsword{Pontuação}
\vtword{\textbf{Total}}
\Newassociation{sol}{Gabarito}{ans}
\renewcommand{\Gabaritolabel}[1]{\textbf{#1 -}}
\noprintanswers
\begin{document}
\Opensolutionfile{ans}[Gabarito1]
\begin{center}
\textbf{Prova Bimestral de Matemática \\
"Matemática é a Ciência dos Padrões"}
\end{center}
\noindent
\textbf{Escola: \enspace \hrulefill \enspace \textbf{Data: \rule{3cm}{.1mm}}} \\
\textbf{Aluno(a): \enspace \hrulefill} \\
\textbf{Professor:} \enspace \hrulefill \enspace \textbf{Valor: 30,0}
\vspace{1 cm}
\begin{questions}
\question[1]
Questão de forma simplificada?
\begin{solution}
A solução da questão é...
\end{solution}
\question[20]
Questão dupla?
\begin{parts}
\part
(5 pontos) Primeira parte.
\part
(5 pontos) Segunda parte.
\part
(10 pontos) Terceira parte com subpartes.
\begin{subparts}
\subpart
(3 pontos) Primeira subparte.
\subpart
(3 pontos) Segunda subparte.
\subpart
(4 pontos) Terceira subparte com subsubparte.
\begin{subsubparts}
\subsubpart
(2 pontos) Primeira subsubparte.
\subsubpart
(2 pontos) Segunda subsubparte.
\end{subsubparts}
\end{subparts}
\end{parts}
\question
Questão de forma simplificada sem pontuação?
\question
Questão de múltipla escolha.
\begin{choices}
\choice Eu
\choice Eu mesmo
\correctchoice Irene
\end{choices}
\question Meu nome é \answerline[Igor]
\question
\fillin[Igor] é meu nome.
\question Verdadeiro ou Falso.
\vf[V] Verdadeiro
\vf[F] Falso
\newpage
\question
Na figura abaixo está representada a fachada de um prédio. Os segmentos de reta $\overline{AB}$ e $ \overline{CD}$ são perpendiculares a $\overline{BE}$ e os segmentos de reta $\overline{AB}$ e $\overline{CD}$ são paralelos. Determine a altura deste prédio.
\newline
\setlength{\columnseprule}{.0mm}
\begin{multicols}{2}
\begin{choices}
\choice 700 m
\choice 800 m
\choice 900 m
\correctchoice 950 m
\choice 1.000 m
\end{choices}
\begin{sol} C \end{sol}
\includegraphics[scale=0.6]{figura.PNG}
\end{multicols}
\begin{minipage}{\linewidth}
\begin{wrapfigure}{r}{10cm}
%\vspace{-12pt}
\includegraphics[scale=0.6]{figura.PNG}
\end{wrapfigure}
\question Essa é uma nova questão.
\vspace*{0.4cm}
\begin{choices}
\choice Escolha 1.
\correctchoice Escolha 2.
\end{choices}
\begin{sol} B \end{sol}
\end{minipage}
\end{questions}
%\newpage
%\begin{center}
%\gradetable[v][questions]
%\end{center}
\Closesolutionfile{ans}
\newpage
\section*{Gabarito}
\input{Gabarito1}
\end{document}