A graceful labeling of a graph of size is an assignment of labels from to the vertices of such that when each edge has assigned a weight defined by the absolute difference of its end-vertices, the resulting weights are distinct. The gracefulness of a graph is the smallest positive integer for which it is possible to label the vertices of with distinct elements from the set in such a way that distinct edges have distinct weights. In this paper, we determine the gracefulness of the union of cycles and complete bipartite graphs. We also give graceful labelings of unions of complete bipartite graphs.