2019独角兽企业重金招聘Python工程师标准>>>

方法1.

\documentclass{article}
\usepackage{ifthen}
\usepackage{array}
%                    *********************
%                     **** 四项选择题 ****
%                    *********************
%      用法: \choice{ }{ }{ }{ }\newcommand{\fourch}[4]{%~\hfill(\qquad)\\
\begin{tabular}{*{4}{@{}p{0.25\textwidth}}}(A)~#1 & (B)~#2 & (C)~#3 & (D)~#4\end{tabular}}
\newcommand{\twoch}[4]{%~\hfill(\qquad)\\
\begin{tabular}{*{2}{@{}p{0.5\textwidth}}}(A)~#1 & (B)~#2\end{tabular}\\\begin{tabular}{*{2}{@{}p{0.5\textwidth}}}(C)~#3 & (D)~#4\end{tabular}}
\newcommand{\onech}[4]{%~\hfill(\qquad)\\
(A)~#1 \\ (B)~#2 \\ (C)~#3 \\ (D)~#4}\newlength\widthcha
\newlength\widthchb
\newlength\widthchc
\newlength\widthchd
\newlength\widthch
\newlength\tabmaxwidth
\setlength\tabmaxwidth{1\textwidth}
\newlength\fourthtabwidth
\setlength\fourthtabwidth{0.25\textwidth}
\newlength\halftabwidth
\setlength\halftabwidth{0.5\textwidth}\newcommand{\choice}[4]{\settowidth\widthcha{AM.#1}\setlength{\widthch}{\widthcha}\settowidth\widthchb{BM.#2}\ifthenelse{\widthch<\widthchb}{\setlength{\widthch}{\widthchb}}{}\settowidth\widthchb{CM.#3}\ifthenelse{\widthch<\widthchb}{\setlength{\widthch}{\widthchb}}{}\settowidth\widthchb{DM.#4}\ifthenelse{\widthch<\widthchb}{\setlength{\widthch}{\widthchb}}{}\ifthenelse{\widthch<\fourthtabwidth}{\fourch{#1}{#2}{#3}{#4}}{\ifthenelse{\widthch<\halftabwidth\and\widthch>\fourthtabwidth}{\twoch{#1}{#2}{#3}{#4}}{\onech{#1}{#2}{#3}{#4}}}}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{blindtext}
\begin{document}
\blindtext
\choice{aaaaaa}{bbb}{cccccccccccccccccccccccccc}{dd}
\blindtext
\choice{aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa}{bbb}{cccccccccccccccccccccccccc}{dd}
\blindtext
\choice{aaaaaaaaa}{bbb}{ccccccccccc}{dd}
\end{document}

方法2

\documentclass{article}
%------------- 选择题 --------------%
\usepackage{tasks}%选择题宏包,tasks环境
\settasks{counter-format={tsk[A].},label-offset={0.4em},label-align=left,column-sep={2pt},item-indent={1pt},before-skip={-0.7em},after-skip={-0.7em}}
% 选择题示例
%\begin{tasks}(4)
%   \task
%   \task
%   \task
%   \task
%\end{tasks}
%------------- 选择题 --------------%
\usepackage{blindtext}
\begin{document}
\blindtext
\begin{tasks}(4)
\task $f(x)$
\task $g(x)$
\task $h(x)$
\task $\varphi(x)$
\end{tasks}
\blindtext
\begin{tasks}(2)
\task $f(x)$
\task $g(x)$
\task $h(x)$
\task $\varphi(x)$
\end{tasks}
\blindtext
\begin{tasks}(1)
\task $f(x)$
\task $g(x)$
\task $h(x)$
\task $\varphi(x)$
\end{tasks}
\end{document}

转载于:https://my.oschina.net/shaodongtang/blog/2250063

LaTeX - 排版试卷 (选择题)相关推荐

  1. LaTeX - 排版试卷(一面双页)

    2019独角兽企业重金招聘Python工程师标准>>> 第一种做法(by夜神月)试卷有分栏线 \documentclass[UTF8]{ctexart} \usepackage{ge ...

  2. 文件格式用Latex排版论文(1)如何将Visio画图文件转换成Latex支持的.eps文件

    本文纯属个人见解,是对前面学习的总结,如有描述不正确的地方还请高手指正~ 写论文的时候经常应用Visio来绘图,然而用Latex排版论文的话,只能插入.eps格式的图片文件.这篇文章举个简单例子,说明 ...

  3. latex 1图加标题_学习|Latex排版

    补充之前发的latex排版! ?友情提醒,不用刻意去学习latex,等准备投稿了,再去学一下. 一.软件 Texlive(Latex环境) + Texstudio(tex编辑器) ps: 具体安装可以 ...

  4. 用 LaTeX 排版编程技术书籍的一些个人经验

    用 LaTeX 排版编程技术书籍的一些个人经验 陈硕 多年之前我写过一篇书评<〈Word 排版艺术〉读后感--兼谈与 LATEX 的比较>,其中写道"如果将来有时间,我把自己用 ...

  5. latex 下划线_备战美赛!论文写作必备Latex排版教程之单词间隔、标题及交叉引用...

    LaTex排版学习往期回顾: Latex源文件及文档布局教程 Latex排版之断行.分页与字符串教程 今日学习 单词的间隔 为了使输出的右边界对齐,LATEX 在单词间插入不等的间隔.在句子的末尾插入 ...

  6. latex排版基础_排版基础分类

    latex排版基础 重点 (Top highlight) There are many parts to creating a beautiful, functional, memorizing de ...

  7. Latex排版全解(转)

    Latex排版全解 http://blog.csdn.net/langb2014/article/details/51354238 转载于:https://www.cnblogs.com/yifdu2 ...

  8. 汉语诗词 LaTeX 排版样式

    清世何须忧庙廊--汉语诗词 LaTeX 排版样式 作者想一些中国古典诗歌,发现大多数早期的例子都是为了英文诗而创作的环境. 下面是作者给出唐诗选集的布局实例. 它不是一般解决方案,而只是一个特定的例子 ...

  9. Latex排版,表格标题总是出现在下方的解决方案

    Latex排版,表格标题总是出现在下方的解决方案 使用Latex排版,生成的PDF确实非常漂亮,即使文章不怎么样,但是经过这样的排版也让人觉得很舒服. 最近使用Latex进行排版的时候就遇到了一些问题 ...

最新文章

  1. 给iOS开发者的React Native入门使用教程
  2. 这些Java8官方挖的坑,你踩过几个?
  3. 初识CISCO_DHCP Server
  4. 数据结构 排序(希尔排序)
  5. poj1190深搜 生日蛋糕
  6. 理解Java对象序列化
  7. 如何捕获和分析 JavaScript Error
  8. 20155222卢梓杰 实验四 恶意代码分析
  9. SAP Spartacus b2b home页面的自动换行是怎么做到的
  10. Apache Lucene 7.0即将发布!
  11. php7 php5.6 array,[转]php5.6 升级到php7及变化
  12. 这些常见的分布式存储系统,你是否都了解?
  13. php的mktime,PHP mktime()函数获得本地时间戳
  14. 数值方法:多项式插值
  15. emacs linux 教程,Emacs基础入门教程(三)使用 Emacs 必知必会
  16. L298N 驱动模块的应用
  17. JavaScript数据类型 - Undefined类型
  18. 产品经理眼中的SLAM技术学习路径
  19. 金融风控项目(数据分析最后阶段精华总结很久!)
  20. Ubuntu nautilus 快速打开文件浏览器

热门文章

  1. 一千度近视眼学计算机,1000度近视眼看到的世界竟然是这样
  2. 第五季完美童模 代言人李佳航 现场走秀回顾
  3. 3.有关802.11a/g物理头:LTF部分
  4. 如何将图片无损放大,图片无损放大的操作方法
  5. PCB板-过孔盖油与过孔塞孔的区别
  6. 重磅!IDC、Forrester、Gartner等6大权威机构2023年数字化趋势预测集锦
  7. 软考-软件设计师 - 第9章 数据库技术基础【附补充常考知识点】
  8. UEFI PCD分析
  9. 双十二数码家电推荐 家用投影仪和投影机哪个好?
  10. ---曾经整混的两个词