Method of automatic grading program design language editor topic

A programming language and automatic scoring technology, applied in the field of program writing and verification, can solve problems such as shallow processing depth, failure to reflect the correctness of students' program semantics, knowledge and concept application, and failure to faithfully reflect the correctness of programs

Inactive Publication Date: 2005-03-23
HARBIN INST OF TECH
View PDF0 Cites 13 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

At present, the automatic scoring methods for programming questions in the programming language test have different entry points, but the common disadvantage is that the depth of processing is relatively shallow. Compiler technology is mainly used to analyze the syntax of the programs written by students and detect the errors in the programs written by students. The grammatical errors are scored according to the grammat

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Method of automatic grading program design language editor topic
  • Method of automatic grading program design language editor topic
  • Method of automatic grading program design language editor topic

Examples

Experimental program
Comparison scheme
Effect test

specific Embodiment approach 1

[0005] Specific implementation mode one: what this specific implementation mode describes is the step of automatic scoring method for programming questions: the following combination figure 1 This embodiment will be specifically described. Input the program S written by the students and the standard answer set T101 of this question into the computer, and select the unmatched standard answer Ti102 from the standard answer set T; carry out the lexical and grammatical analysis of the program S and the standard answer Ti in their respective high-level languages, and use the analysis As a result, the system dependency graph G is generated respectively s , system dependency graph G t,i 103; System dependency graph G s , system dependency graph G t,i Perform normalization processing 104 and perform system dependency graph G s Syntax detection of the corresponding high-level language, the system depends on graph G s , system dependency graph G t,i The expressions in 105 are repr...

specific Embodiment approach 2

[0011] Specific implementation mode two: the following combination figure 2 This embodiment will be specifically described. The difference between this embodiment and Embodiment 1 is that step 104 is divided into the following steps: (after the lexical and grammatical analysis of the source program and the representation of the system dependency graph, the program contains two or more than two semantic functions. Under the condition that the semantics of the program remain unchanged but the grammatical form of the expression changes), the system dependency graph G s , system dependency graph G t,i Simplified to an expression 201 that only includes a semantic function (for example: the C program statement "n=m++;" can be simplified to "n=m; m++;"; then, the special statement, selection and loop structure in the normalized system dependency diagram ), put the system dependency graph G s , system dependency graph G t,i The specification is simplified to a form that only incl...

specific Embodiment approach 3

[0012] Specific implementation mode three: the following combination image 3 This embodiment will be specifically described. This specific embodiment describes the system dependency graph G s , system dependency graph G t,i The difference between this embodiment and Embodiment 1 is that step 106 is divided into the following steps: firstly, use standardized rules to process the system dependency graph G s , system dependency graph G t,i expression 301; determine whether the standardization rules are not applicable 302; the result is no, then return to step 301 (expression standardization is mainly to apply the standardization processing rules to the expression in the syntax tree form, until these rules are not applicable to the expression formula); if the result is yes, delete the system dependency graph G s, system dependency graph G t,i Redundant code 303 in (that is, delete the code that cannot be executed under any conditions or the code that can be executed but does...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention discloses an automatic grading method used in C, Pascal, Fortran and Basic programming subjects. Its steps include: input program (S) designed by students and standard key; respectively analyze grammar and accidence of program (S) and standard key (Ti) and generate system dependency graph (Gs), (Gt.i); Normalize the two graphs; represent the two graphs in syntax tree to eliminate code diversification; match process result in scale, construction, depth and knowledge application four layers; give once matching score (108) and select the highest score from all matching results of (S) and (Ti) as the final score (110). With a full consideration of kinds of grading factors, the invention has a higher precision than manual grading.

Description

Technical field: [0001] The invention belongs to the field of program writing verification, and in particular relates to a method for automatic scoring of programming questions in C, Pascal, Fortran and Basic programming languages. Background technique: [0002] The development of distance education and the popularization of basic computer knowledge make automatic scoring of programming questions in programming language examinations an urgent need. At present, the automatic scoring methods for programming questions in the programming language test have different entry points, but the common disadvantage is that the depth of processing is relatively shallow. Compiler technology is mainly used to analyze the syntax of the programs written by students and detect the errors in the programs written by students. The grammatical errors are scored according to the grammatical errors. Since the grammatical errors can only reflect the correctness of the grammar in the program written ...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
IPC IPC(8): G06F17/00G06F17/30
Inventor 王宇颖李永浩孙志岗苏小红李希然朱鲲鹏付忠传
Owner HARBIN INST OF TECH
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products