advanced c programming (purdue ece 264)