Let G be a simple graph with 2n vertices and a perfect matching. The forcing number of a perfect matching M of G is the smallest cardinality of a subset of M that is contained in no other perfect matching of G. Let f (G) and F (G) denote the minimum and maximum forcing number of G among all perfect matchings, respectively.Hetyei obtained that the maximum number of edges of graphs G with a unique perfect matching is n 2 (see Lovász [20]). We know that G has a unique perfect matching if and only if f (G) = 0. Along this line, we generalize the classical result to all graphs G with f (G) = k for 0 ≤ k ≤ n − 1, and obtain that the number of edges is at mostand characterize the extremal graphs as well. Conversely, we get a non-trivial lower bound of f (G) in terms of the order and size. For bipartite graphs, we gain corresponding stronger results. Further, we obtain a new upper bound of F (G).Finally some open problems and conjectures are proposed.