1. An NC-program searching method comprising: a first image generating step for generating, when shape data of a machining target is input from an outside, image data corresponding to the shape data of the machining target as machining target image data; a second image generating step for generating, based on NC programs created in the past, image data of a machining finish shape as finish shape image data; a storing step for storing the finish shape image data in association with an NC program corresponding thereto; a similarity calculating step for comparing the machining target image data and the finish shape image data to thereby calculate similarity of both the image data; a searching step for searching, based on the similarity, candidates of finish shape image data similar to or matching the machining target image data and displaying the candidates; and a first program displaying step for displaying, out of the candidates of the finish shape image data, an NC program for finish shape image data designated by the external input.