程序教学依据的理论是
试误学习理论
操作性条件反射理论
建构主义学习理论
社会学习理论
解析:斯金纳提出操作性条件反射理论,并将该理论运用到动物训练、企业管理、课堂管理等各种情境,程序教学即是该理论在教学中的系统运用。因此本题选B。