The program accepts the order and elements of two matrices as input from the user. It then multiplies the matrices and stores the product in a third matrix. The product matrix is then printed to the screen. The program checks that the matrices can be multiplied by verifying that the number of columns of the first matrix matches the number of rows of the second.