سلام
ساختار زیر مشکل شما را حل میکند:
\setlength{\multicolsep}{2pt}
کد شما به صورت زیر است:
\documentclass[twoside]{article}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{etoolbox}
\usepackage{multicol}
\usepackage{parskip}
\usepackage[margin=2cm]{geometry}
\setlength{\parindent}{0cm} % Default is 15pt.
\setlength{\parskip}{0pt}
\ifdef{\myoutput}{}{\def\myoutput{exam}}
\ifdef{\myversion}{}{\def\myversion{2}}
\usepackage[output=\myoutput
,numberofversions=2
,version=\myversion
,seed=1
,randomizequestions=true
,randomizeanswers=true
,writeRfile=true
]{mcexam}
\usepackage{fancyhdr,lastpage}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{1pt}
\renewcommand{\footrulewidth}{1pt}
\lhead{Student Name:...................}
\rhead{Student Id:....................}
\lfoot{\mctheversion}
\rfoot{Page \thepage\ of \pageref{LastPage}}
\renewenvironment{setmcanswers}{}{}
\setlist[setmcquestions]{label=\mcquestionlabelfmt{*}.
,ref=\mcquestionlabelfmt{*}
,itemsep=1\baselineskip
,topsep=.1\baselineskip
}
\setlist[setmcanswerslist]{label=\mcanswerlabelfmt{*}
,ref=\mcanswerlabelfmt{*}
,itemsep=.01\baselineskip
,topsep=-.1\baselineskip
}
% use Version 1, 2 etc instead of I, II
\renewcommand\mcversionlabelfmt[1]{\arabic{#1}}
\renewcommand\mcanswerlabelfmt[1]{(\arabic{#1})}
\usepackage{calc}
\renewenvironment{setmcquestion}{\begin{minipage}[t]{\linewidth-\labelwidth}}{\end{minipage}\par}
\setlength{\multicolsep}{2pt}
\begin{document}
\begin{mcquestions}
\question What is the synonym of "quit; desert"?
\begin{multicols}{4}
\begin{mcanswerslist}
\answer[correct] Abandon
\answer Vacant
\answer Sinister
\answer Abundant
\end{mcanswerslist}
\end{multicols}
\question What is the synonym of "sharp; eager; intense; sensitive"?
\begin{multicols}{4}
\begin{mcanswerslist}
\answer[correct] Keen
\answer Tact
\answer Inhabit
\answer Kneel
\end{mcanswerslist}
\end{multicols}
\end{mcquestions}
\end{document}
اینم خروجیهای شما با تکلایو 2018 (آپدیت دوم مهر 97):
موفق باشید.