Example 2 If a wire of length 20 is used to form a triangle with all three sides of integer lengths, then the number of non-congruent triangles is ( ).
(A) 5
(B) 6
(C) 8
(D) 10
(1998, Beijing Junior High School Mathematics Competition Preliminary)
Solution: Let the three sides of the triangle be $a, b, c$. And let $a \leqslant b \leqslant c$, then $a+b>c$. Therefore,
$$
2 c<a+b+c=20 \leqslant 3 c \text {. }
$$

We have $6 \frac{2}{3} \leqslant c \leqslant 10$.
Thus, $c=7,8,9$.
(1) When $c=7$, $(a, b)=(6,7)$;
(2) When $c=8$,
$$
(a, b)=(4,8),(5,7),(6,6) \text {; }
$$
(3) When $c=9$,
$$
(a, b)=(2,9),(3,8),(4,7),(5,6) \text {. }
$$

In summary, there are 8 triangles that meet the conditions, so the answer is (C).