Flip-flops in general are used to create circuits with memory, which encode bits or other logic states one wants to save and use for computation. An example would be to save the answers from the adders from last lecture. We'll see other examples next lecture.
Clocked flip-flops are usually used instead of asynchronous ones, because it's easier to make well-behaved circuits when logic transitions only happen at well-defined times, i.e., at the clock transitions. Asynchronous circuits are subject to logic races and glitches.