The invention provides a method for predicting the velocity of a longitudinal wave of a rock system in a heterogeneous reservoir. The method for predicting the velocity of the longitudinal wave of the rock system in the heterogeneous reservoir comprises the steps of (1) obtaining the permeability, the porosity, the shale content, mineral constituents, mineral volume rates and pore fluid data, (2) building a rock bare-skeleton model and an embedded body fluid model, (3) calculating the velocity of fluid inside an embedded body according to the embedded body fluid model, (4) calculating the kinetic energy function and the dissipative energy function of a double-pore medium according to the velocity of the fluid inside the embedded body, (5) using the kinetic energy function and the dissipative energy function of the double-pore medium to export an improved Biot-Rayleigh equation set according to the Hamilton principle and the Lagrange equation, and (6) predicting the velocity of the longitudinal wave of rock in the heterogeneous reservoir through plane wave analysis and the improved Biot-Rayleigh equation set. The method for predicting the velocity of the longitudinal wave of the rock system in the heterogeneous reservoir takes full consideration of anisotropism of the rock system and fluid kinetic energy caused by a fluid velocity field inside the embedded body and dissipative energy caused by the fluid velocity field inside the embedded body, can predict the velocity of the longitudinal wave of the oil-in-water double-pore rock system, overcome the defects of an original Biot-Rayleigh equation set, and retain the advantage, of the original Biot-Rayleigh equation set, of being simple in format.