You should figure it out for yourself!!
Alot of people use a small 2d array to keep the block positions, then when the shape is placed, you insert it into array then detect for completed lines, then if any lines are completed the slit gets memcpyd out of the array.
Its actually mostly easy, its definitely a beginner project.
The hard bit is getting all the animation nice and smooth and the visuals nice.