As Moron said, try it yourself. But, to put more structure around the topic...
There is interface inheritance (what methods can I call on an object?) and implementation inheritance (what code gets called when I call this method on this object?). Pure virtual methods provide interface inheritance, but not implementation inheritance. A virtual (but non-pure) method provides both, with the option to allow a derived class to provide a different implementation. A non-virtual method provides both, without the option to allow a derived class to provide a different implementation.