Computer basic teaching is an essential basic learning content in higher education teaching. In order to encourage students and enable them to practice and improve their programming ability, the online judge system has been introduced into the programming course for compiling, executing and evaluating the algorithm source code submitted by students. The asymmetry of students’ programming level is an important issue when teachers guide the programming of online judge system. We used the exploratory factor analysis method to identify the potential variable structure from the log data submitted by the students of the online judge system, and evaluate the programming level of the students to predict the “at risk” learners. We proposed a student participation model, SCFH, based on this variable structure. Using the log data of the students in the C language course and their final exam results, we trained a deep neural network based on SCFH to divide the students into three different grades, namely “risky”, “intermediate” and “advanced”. To verify the validity of the model, we used the prediction model to classify students in another C++ language programming course. The results show that the submission log data model SCFH can be used to predict the programming ability of students, and the validity of these results can be tested by examination results.