用 tikz 实现。
\documentclass[tikz,border=1cm]{standalone}
\begin{document}
\begin{tikzpicture}[
cell/.style={
draw,
line width=0.8pt,
minimum width=7.2mm,
minimum height=6mm,
inner sep=0pt,
font=\small
}
]
\def\inset{1mm}
\foreach \x in {1,...,100} {
\pgfmathsetmacro{\row}{int((\x-1)/10)}
\pgfmathsetmacro{\col}{int((\x-1) - 10*\row)}
\node[cell] (N\x) at ({7.2mm*\col},{-6mm*\row}) {\x};
\ifnum\x=2\relax\else
\ifnum\x=3\relax\else
\ifnum\x=5\relax\else
\ifnum\x=7\relax\else
\pgfmathtruncatemacro{\mii}{mod(\x,2)}
\ifnum\mii=0
\draw[thick]
([xshift=\inset,yshift=-\inset]N\x.north west) --
([xshift=-\inset,yshift=\inset]N\x.south east);
\else
\pgfmathtruncatemacro{\miii}{mod(\x,3)}
\ifnum\miii=0
\draw[thick]
([xshift=-\inset,yshift=-\inset]N\x.north east) --
([xshift=\inset,yshift=\inset]N\x.south west);
\else
\pgfmathtruncatemacro{\mv}{mod(\x,5)}
\ifnum\mv=0
\draw[thick]
([xshift=\inset,yshift=-\inset]N\x.north west) --
([xshift=-\inset,yshift=\inset]N\x.south east);
\draw[thick]
([xshift=-\inset,yshift=-\inset]N\x.north east) --
([xshift=\inset,yshift=\inset]N\x.south west);
\else
\pgfmathtruncatemacro{\mvii}{mod(\x,7)}
\ifnum\mvii=0
\draw[thick]
([xshift=\inset]N\x.west) --
([xshift=-\inset]N\x.east);
\fi
\fi
\fi
\fi
\fi\fi\fi\fi
}
\end{tikzpicture}
\end{document}












问 一个趣味循环编程练习