
如果你正在准备数学建模国赛、美赛或者任何需要提交高质量学术论文的场景面对 Word 排版公式、图表、参考文献的繁琐和混乱LaTeX 可能是你提升效率、保证格式规范的最优解。这篇文章不讲复杂的历史和理论直接聚焦于一个核心问题如何在最短时间内让一个零基础的竞赛选手或学术新人能用 LaTeX 写出符合国赛、美赛等竞赛要求的标准论文本文基于一位国赛省一等奖获得者的实战经验将 LaTeX 学习路径浓缩为“安装、模板、写作、编译、排错”五个核心环节。我们重点关注环境搭建的便捷性、竞赛模板的获取与使用、写作流程的高效技巧以及遇到报错时的快速排查方法。无论你使用的是 Windows、macOS 还是 Linux无论你的目标是快速交稿还是追求排版完美这篇文章都将提供一套可直接上手操作的行动指南。1. 核心能力速览LaTeX 能为竞赛写作带来什么在深入细节之前我们先通过一个表格快速了解 LaTeX 在学术竞赛写作中的核心价值与学习门槛。能力项说明与对竞赛写作的价值专业排版自动化自动处理页眉页脚、章节编号、图表标题、公式编号、参考文献引用和生成。你只需关注内容格式由 LaTeX 引擎保证统一、规范彻底告别手动调整格式的烦恼。数学公式支持原生支持复杂数学公式排版语法直观如\sum,\int,\frac渲染效果远超 Word 公式编辑器是数学建模论文的刚需。图表管理自动为图表添加标签和编号支持浮动体定位文中引用 (\ref{fig:myfig}) 可自动更新编号避免图表序号错乱。参考文献管理配合 BibTeX 或 BibLaTeX可轻松管理文献库文中引用 (\cite{key}) 自动在文末生成标准化参考文献列表支持多种著录格式如国标 GB/T 7714。版本控制友好源文件为纯文本.tex可与 Git 等版本控制系统完美配合方便团队协作和修改追踪。学习曲线前期有一定门槛需要学习基础语法和命令。但掌握核心 20% 的命令即可完成 80% 的论文写作。竞赛模板能极大降低入门难度。“编译”思维需要从“所见即所得”Word转变为“所想即所得”编写源码编译生成 PDF。这是最主要的思维转换点。适合场景数学建模国赛/美赛、学术论文、学位论文、技术报告等对格式规范性要求高的场景。不适合需要频繁进行复杂版面艺术设计的文档。简单来说LaTeX 是一个“用代码写文档”的系统。你的工作流程是用任何文本编辑器编写.tex源文件 - 用 LaTeX 引擎如 XeLaTeX编译 - 得到精美的.pdf输出文件。2. 为什么竞赛选手需要 LaTeX对比 Word 的优势与边界对于数学建模这类时间紧、任务重、格式要求严格的竞赛LaTeX 的优势尤为突出。LaTeX 的核心优势格式规范节省心力竞赛组委会通常提供 LaTeX 模板。使用模板你无需担心页边距、字体、标题格式只需填充内容生成的 PDF 必然符合官方格式要求避免了因格式问题扣分的风险。公式与编号自动化论文中大量出现的公式、图表、章节其编号和交叉引用是自动完成的。即使你在中间插入一个新的公式后续所有编号和引用都会自动更新绝对不可能出现“(公式1), (公式3), (公式2)”这种错误。参考文献管理在写作时你只需要用\cite{...}标记引用的文献。所有文献条目集中在一个.bib文件中管理。编译后文末会自动按顺序生成参考文献列表文中引用处也会变成对应的上标编号。增删文献极其方便。稳定性与协作纯文本源文件几乎不会损坏也易于使用 Git 进行版本管理和团队协作。每个人修改了哪一部分清晰可见合并冲突也比处理 Word 文档简单。LaTeX 的适用边界不适合追求“像素级”自由排版如果你需要像设计海报一样随意拖拽每个元素的位置LaTeX 的“内容与样式分离”哲学会让你感到束缚。它更擅长结构化、标准化的文档。学习初期有调试成本遇到编译错误报错需要学习如何阅读日志、排查问题。但这正是本文要重点解决的部分。查看效果需要编译不能像 Word 一样实时预览需要执行编译命令生成 PDF 后再查看。但现代编辑器如 VS Code通常具备实时预览插件可以很大程度上弥补这一点。结论对于数学建模竞赛强烈建议使用官方或成熟的 LaTeX 模板。它将格式的负担从你身上转移到了可靠的系统上让你能更专注于建模和写作本身。3. 环境准备选择最适合你的 LaTeX 发行版与编辑器工欲善其事必先利其器。LaTeX 环境主要包括两部分LaTeX 发行版包含编译引擎、宏包、字体等所有后台工具和编辑器你用来写代码的软件。3.1 LaTeX 发行版安装对于绝大多数用户推荐安装一个完整的发行版它打包了一切所需。Windows 用户TeX Live 或 MiKTeXTeX Live功能全面一次安装基本无需联网更新。安装包较大约4GB但最稳定。下载地址访问 TeX Live 官网 或使用国内镜像如清华镜像站。推荐安装install-tl-windows.exe安装时建议勾选“为所有用户安装”并添加环境变量。MiKTeX体积相对较小采用“按需安装”模式首次编译时如果缺少宏包会自动下载安装。适合网络条件好、硬盘空间紧张的用户。下载地址 MiKTeX 官网 。macOS 用户MacTeXMacTeX 是 TeX Live 的 macOS 发行版集成了 GUI 管理工具。下载地址 MacTeX 官网 安装.pkg文件即可。Linux 用户通常可以通过包管理器直接安装。例如在 Ubuntu/Debian 上sudo apt update sudo apt install texlive-full # 安装完整版推荐 # 或 sudo apt install texlive-latex-extra texlive-fonts-extra texlive-science # 安装常用组件安装验证安装完成后打开命令行Windows 为 CMD 或 PowerShellmacOS/Linux 为 Terminal输入以下命令如果显示版本号则说明安装成功。latex --version xelatex --version # XeLaTeX 是处理中文字体的推荐引擎3.2 编辑器选择与配置编辑器是你的主战场。一个好的编辑器能极大提升写作和排错效率。Visual Studio Code LaTeX Workshop 插件强烈推荐优点免费、轻量、功能强大、插件生态丰富。LaTeX Workshop 插件提供了语法高亮、代码补全、实时预览、一键编译、错误提示等几乎所有你需要的功能。安装步骤安装 VS Code 。在 VS Code 扩展商店中搜索并安装“LaTeX Workshop”。安装后新建或打开一个.tex文件左侧活动栏会出现 TeX 图标即可使用相关功能。核心配置为了更好支持中文建议在 VS Code 的设置中或项目下的.vscode/settings.json文件里配置使用xelatex作为默认编译工具。{ latex-workshop.latex.tools: [ { name: xelatex, command: xelatex, args: [ -synctex1, -interactionnonstopmode, -file-line-error, %DOCFILE% ] } ], latex-workshop.latex.recipes: [ { name: xelatex - bibtex - xelatex*2, tools: [ xelatex, bibtex, xelatex, xelatex ] } ], latex-workshop.view.pdf.viewer: tab }Overleaf在线编辑器优点无需安装任何软件打开浏览器即可使用。内置大量模板实时协作功能强大非常适合团队合作。缺点依赖网络免费版有编译时间和项目数量限制处理大型文档或复杂图表时可能速度较慢。适用场景团队协作、快速尝试、在没有本地环境时的应急选择。建议以本地 VS Code LaTeX Workshop 为主力享受快速响应和强大定制能力将 Overleaf 作为备份和协作平台。4. 实战第一步获取并使用竞赛模板对于竞赛新手不要从零开始写一个 LaTeX 文档。直接使用成熟的模板是最高效的入门方式。寻找模板国赛/美赛官方渠道关注全国大学生数学建模竞赛、美国大学生数学建模竞赛MCM/ICM官网它们有时会提供官方的 LaTeX 模板。GitHub/Gitee在代码托管平台搜索关键词如mathmodeling latex template、cumcm latex、mcm-icm latex能找到大量往届选手分享和优化的模板。CTANLaTeX 宏包和模板的官方仓库可以找到一些通用学术模板如ctex宏包自带的文章模板。模板结构解析一个典型的竞赛模板项目包含以下文件your_project/ ├── main.tex # 主文档文档的入口 ├── sections/ # 章节文件夹 │ ├── abstract.tex # 摘要 │ ├── introduction.tex # 问题重述/引言 │ ├── model.tex # 模型建立 │ ├── solve.tex # 模型求解 │ ├── discuss.tex # 模型评价与推广 │ └── reference.tex # 参考文献 (有时也单独用 .bib 文件) ├── figures/ # 存放图片的文件夹 │ └── model_flowchart.pdf ├── tables/ # 存放表格数据文件的文件夹可选 ├── codes/ # 存放程序代码的文件夹可选 ├── references.bib # BibTeX 参考文献数据库文件 └── README.md # 说明文件使用模板将整个模板文件夹下载到本地。用 VS Code 打开该文件夹。阅读main.tex和README.md了解如何组织内容。你的主要工作就是编辑sections/目录下的各个.tex文件替换掉里面的示例文字填入你们队伍自己的内容。在figures/目录下放入你们的图片推荐 PDF、PNG、JPG 格式。在references.bib文件中管理你们的参考文献条目。5. 核心语法速成20%的命令完成80%的写作你不需要成为 LaTeX 专家。掌握以下最常用的命令和语法就足以应对竞赛论文写作。5.1 文档结构与章节\documentclass[12pt, a4paper]{article} % 文档类文章12磅字A4纸 \usepackage{ctex} % 引入ctex宏包完美支持中文 \title{202X年全国大学生数学建模竞赛} % 标题 \author{队伍编号XXXXXX \\ 队员张三李四王五} % 作者 \date{\today} % 日期\today 会自动替换为当前日期 \begin{document} % 文档开始 \maketitle % 生成标题页 \tableofcontents % 生成目录如果需要 \newpage % 换页 \section{问题重述} % 一级章节 这里是问题重述的内容... \subsection{问题一的分析} % 二级子章节 对问题一的进一步分析... \section{模型假设} \begin{itemize} % 无序列表环境 \item 假设 1: ... \item 假设 2: ... \end{itemize} \section{模型的建立与求解} \subsection{模型建立} 这里是模型建立的内容... \subsection{模型求解} 这里是模型求解的内容... \end{document} % 文档结束5.2 数学公式行内公式用$...$独立公式用\[...\]或equation环境。我们设目标函数为 $f(x) \sum_{i1}^{n} x_i^2$这是一个行内公式。 独立公式会自动编号并可在文中引用 \begin{equation}\label{eq:objective} \min_{x \in \mathbb{R}^n} f(x) \|Ax - b\|_2^2 \lambda \|x\|_1 \end{equation} 如公式\eqref{eq:objective}所示我们构建了一个LASSO回归模型。 多行公式对齐使用 align 环境 \begin{align} a b c \label{eq:1} \\ d e^2 \int_{0}^{1} f(x) \, dx \label{eq:2} \end{align}关键为重要的公式添加\label{...}标签之后就可以用\eqref{...}来引用它编号会自动更新。5.3 插入图片与表格插入图片需要\usepackage{graphicx}\begin{figure}[htbp] % htbp 是推荐的位置参数让系统自动选择最佳位置 \centering % 居中 \includegraphics[width0.8\textwidth]{figures/model_flowchart.pdf} % 宽度设为文本宽度的80% \caption{模型求解流程图} % 图片标题 \label{fig:flowchart} % 图片标签 \end{figure} 图\ref{fig:flowchart}展示了我们的算法流程。 % 引用图片插入三线表推荐booktabs宏包\begin{table}[htbp] \centering \caption{模型参数敏感性分析结果} % 表格标题 \label{tab:sensitivity} \begin{tabular}{cccc} % 四个列全部居中 \toprule % 上横线 参数 基准值 变化范围 目标函数变化率 (\%) \\ \midrule % 中横线 $\alpha$ 0.5 $\pm 0.2$ 12.3 \\ $\beta$ 1.0 $\pm 0.3$ 8.7 \\ $\gamma$ 2.0 $\pm 0.5$ 5.1 \\ \bottomrule % 下横线 \end{tabular} \end{table} 如表\ref{tab:sensitivity}所示参数$\alpha$最为敏感。5.4 参考文献管理BibTeX这是 LaTeX 最强大的功能之一。你只需要维护一个.bib文件。创建references.bib文件article{author2023title, title{一篇重要的参考文献}, author{作者一 and 作者二}, journal{期刊名}, volume{10}, number{2}, pages{100--120}, year{2023} } book{knuth1984texbook, title{The TeXbook}, author{Knuth, Donald E.}, year{1984}, publisher{Addison-Wesley} }每个条目有一个唯一的key如author2023title用于在文中引用。条目信息可以从 Google Scholar、知网等网站直接导出 BibTeX 格式。在文中引用近年来深度学习在图像处理领域取得了显著进展\cite{author2023title}。 经典的排版系统由 Knuth 提出\cite{knuth1984texbook}。在文档末尾列出参考文献 在main.tex的\end{document}之前通常模板已经配置好如下命令\bibliographystyle{plain} % 指定参考文献样式如 plain, unsrt, ieeetr 等。中文常用 gbt7714-numerical \bibliography{references} % 指定 .bib 文件名不带后缀编译流程当文档中使用了\cite和\bibliography后需要执行特定的编译链来生成正确的引用编号和文献列表。在 VS Code 的 LaTeX Workshop 中可以使用预定义的编译配方Recipe通常是XeLaTeX - BibTeX - XeLaTeX - XeLaTeX运行两次 XeLaTeX 是为了正确解析引用编号。6. 高效写作与团队协作流程分而治之充分利用模板的模块化结构。队长负责main.tex的框架整合队员 A 写model.tex队员 B 写solve.tex队员 C 负责figures/和tables/。最后统一合并。版本控制Git在项目根目录初始化 Git 仓库。每次完成一个章节或一个重要修改后进行提交。git add . git commit -m 完成模型建立部分初稿 git push origin main这能有效追踪历史、防止误删并方便团队合并代码。实时预览在 VS Code 中使用 LaTeX Workshop 插件的“查看 LaTeX PDF 文件”功能快捷键CtrlAltV可以打开一个侧边预览窗口并支持正向源码-PDF和反向PDF-源码搜索。专注内容暂避格式写作时如果遇到不确定如何排版的复杂内容如复杂表格、特殊符号可以先用一个注释标记% TODO: 这里插入一个对比表格或者用简单文本描述继续推进主体写作。全部内容完成后再集中精力解决这些格式难点。7. 编译、排错与调试实战指南编译出错是 LaTeX 新手的必经之路。不要恐慌系统给出的错误信息是解决问题的钥匙。7.1 标准编译流程与命令在 VS Code 中通常点击编辑器右上角的“编译”按钮或使用快捷键CtrlAltB即可。它背后执行的命令序列Recipe类似于xelatex main.tex生成.aux等辅助文件bibtex main.aux处理参考文献xelatex main.tex插入参考文献引用xelatex main.tex最终定型解决所有交叉引用手动命令行编译备用# 在项目根目录下执行 xelatex main.tex bibtex main.aux xelatex main.tex xelatex main.tex7.2 常见错误与排查方法问题现象可能原因排查方式解决方案Undefined control sequence.拼写错误的命令或未引入的宏包。查看错误行附近的命令如\includegrahpics。检查命令拼写应为\includegraphics。如果命令正确检查是否缺少\usepackage{...}。File ended while scanning use of \xxx.括号{}、环境\begin{}...\end{}或$...$没有配对。错误信息会指出是哪个命令/环境没闭合。从错误行往前找。找到缺失的}、\end{...}或$并补全。编辑器的高亮和括号匹配功能很有帮助。LaTeX Error: File ‘xxx.sty’ not found.缺少必要的 LaTeX 宏包。错误信息会直接指出缺失的.sty文件如algorithm2e.sty。使用发行版的包管理器安装。TeX Live 用tlmgr install algorithm2eMiKTeX 通常会提示自动安装。Citation ‘xxx’ on page y undefined参考文献引用\cite{xxx}中的xxx在.bib文件中不存在或 BibTeX 未成功运行。1. 检查references.bib中是否有xxx{xxx, ...}条目。2. 检查是否执行了完整的编译链含bibtex。1. 补全.bib条目或修正引用 key。2. 运行完整的编译链XeLaTeX - BibTeX - XeLaTeX - XeLaTeX。Overfull \hbox (...pt too wide)内容如长单词、长公式、长URL超出了行的宽度。错误信息会指出具体在哪一行超宽。这不是致命错误但影响美观。可以手动在合适位置添加换行\\或使用\sloppy命令慎用或调整单词间距。生成的 PDF 中中文显示为空白或乱码未使用支持中文的引擎或宏包。检查文档开头是否使用了\usepackage{ctex}并采用xelatex编译。确保1. 文档类后引入\usepackage{ctex}。2. 编译命令是xelatex而不是pdflatex。图片无法显示1. 图片路径错误。2. 图片格式不支持如 EPS 未转换。3. 文件名包含空格或中文。检查\includegraphics中的文件路径是否正确文件是否存在。1. 使用相对路径并将图片放在项目子目录如figures/下管理。2. 将图片转换为 PDF、PNG 或 JPG 格式。3. 避免在文件名中使用空格和特殊字符尽量使用英文。排错黄金法则从第一个错误开始解决LaTeX 的错误有时会产生连锁反应解决最前面的错误后面的可能自动消失。阅读错误日志编译器会输出.log文件里面有更详细的错误上下文。在 VS Code 的“问题”面板或终端输出中仔细阅读。注释法定位如果无法定位错误可以尝试将疑似出错的行或段落用%注释掉逐步缩小范围。善用搜索引擎将错误信息直接复制到搜索引擎如 Google、Bing大概率能找到解决方案。Stack Overflow 和 TeX - LaTeX Stack Exchange 是宝藏网站。8. 竞赛写作最佳实践与高级技巧保持模板纯净在模板的专用目录如sections/,figures/内工作不要随意修改模板的样式定义文件除非你很清楚在做什么。这样便于后续更新模板或复用。图表管理所有图片统一放在figures/文件夹使用有意义的英文命名如flowchart.pdf,data_plot.png。在文中引用图表时使用\label{}和\ref{}不要手动输入“图1”。对于复杂图表可以考虑使用 TikZ 宏包绘制但竞赛时间紧张时用 Python (Matplotlib) 或 MATLAB 生成 PDF/PNG 图片插入是更高效的选择。代码展示如果论文中需要附上关键代码使用listings或minted宏包进行语法高亮和格式化不要直接粘贴无格式的代码块。\usepackage{listings} \usepackage{xcolor} \lstset{ languagePython, basicstyle\ttfamily\small, keywordstyle\color{blue}, commentstyle\color{green}, numbersleft, numberstyle\tiny\color{gray}, framesingle, breaklinestrue } % 在文中插入代码 \begin{lstlisting} import numpy as np def objective(x): return np.sum(x**2) # 这是一个注释 \end{lstlisting}善用宏包LaTeX 的强大功能依赖于各种宏包。对于竞赛以下宏包非常实用amsmath,amssymb更强大的数学公式支持。graphicx插入图片。booktabs绘制漂亮的三线表。algorithm,algorithmicx或algorithm2e排版算法伪代码。hyperref让 PDF 生成可点击的目录、引用链接注意此宏包应最后引入。最终检查清单[ ] 所有章节、公式、图表、参考文献的引用编号是否正确、连续[ ] 是否有拼写错误可使用编辑器拼写检查[ ] 图片是否清晰图表标题是否准确[ ] 参考文献列表格式是否符合要求国赛常有指定格式[ ] 生成的 PDF 文件是否完整有无异常空白页[ ] 团队信息、页码等是否已按要求填写和设置LaTeX 初看像一堵高墙但一旦你掌握了用模板启动、用核心命令写作、用编译链生成、用错误信息调试这一套流程它就会从障碍变为你最得力的助手。在数学建模竞赛这种分秒必争的战场上一个稳定、规范、自动化的排版工具能为你节省大量调整格式的精力让你和你的团队更专注于模型构建与求解本身。从今天开始找一个可靠的模板配置好 VS Code 环境动手写下第一个\section{问题重述}你便已经踏上了高效竞赛写作的正轨。