有人能告诉我为什么如果我写这段代码
\documentclass[10pt,a4paper]{article}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\renewcommand{\rmdefault}{ptm}
\usepackage{amsmath, amscd, amsthm, amssymb}
\counterwithin{table}{section}
\begin{table}[H]
\centering%
\footnotesize
\begin{tabular}{|m{0.10\textwidth}|m{0.10\textwidth}|m{0.15\textwidth}|m{0.20\textwidth}|m{0.10\textwidth}|m{0.10\textwidth}|}
\hline
\text{Bernoulli} &
$p \in [0,1]$ &
$\left \{ 0, 1 \right \}$ &
$\begin{aligned} p(0) &= 1 - p \\ p(1) &= p \end{aligned}$ &
$p$ &
$p(1 - p)$ \\ \hline
\end{tabular}
\caption{}
\end{table}
我收到此错误:
数组参数中有非法字符
得到的表格是这样的吗?
答案1
事实上,许多因素都缺失,从而导致了错误。
\documentclass[10pt,a4paper]{article}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage{amsmath, amscd, amsthm, amssymb}
\usepackage[section]{placeins}
\usepackage{chngcntr,array}
\renewcommand{\rmdefault}{ptm}
\counterwithin{table}{section}
\begin{document}
\section{Section 1}
\begin{table}
\centering
\footnotesize
\begin{tabular}{|p{0.10\textwidth}p{0.10\textwidth}|p{0.15\textwidth}p{0.20\textwidth}|p{0.10\textwidth}p{0.10\textwidth}|}
\hline
\text{Bernoulli} & $p \in [0,1]$ & $\left \{ 0, 1 \right \}$ &
$\begin{aligned}
p(0) &= 1 - p \\
p(1) &= p
\end{aligned}$ & $p$ & $p(1 - p)$ \\ \hline
\end{tabular}
\caption{}
\label{test}
\end{table}
Table \ref{test} is displayed above.
\end{document}
评论:
chngcntr
您的命令缺少包\counterwithin
。placeins
被添加到带有部分的绑定表中。\begin{document}
并且\end{document}
失踪了。m{}
需要array
包,但p{}
不需要包,所以我更改它。为了有3列,表格设置中的一些垂直线是多余的。