From Everyday Reasoning to Program Construction: Instructional Episodes from an Introductory C Programming Course for Non-Computer Majors - Gao, Wei; Zhang, Fengqi (International Journal of Computer Science and Information Technology, 2026)
Introductory programming is particularly challenging for students from non-computer majors, not only because of syntactic complexity but also due to the lack of a cognitive transition from everyday reasoning to algorithmic problem solving. This study presents a series of instructional episodes from an introductory C programming course to illustrate how abstract programming concepts can be grounded in familiar real-life experiences. These episodes show how students transitioned from intuitive understanding to structured reasoning and ultimately to independent program construction. Classroom observations indicate increased willingness to initiate coding, stronger persistence in debugging, and an emerging ability to transfer solution patterns to new problems. The findings suggest that connecting algorithmic concepts with everyday cognitive experiences reshapes students’ perception of programming from knowledge memorisation to meaningful problem solving. This narrative provides practical and transferable teaching insights for programming education in similar contexts.