这个问题应该说有多少不是用城市命名的。
早期我军舰艇正规化水平比较低,各种概念型名称或者形容词性舰艇有一些,比如解放号这种。另外也有一些叫法比较奇特的,比如重庆舰打捞出水后没有修复作为军舰,而是改为宿舍船,直到90年代才拆毁,当时起名为黄河。
现代我军作战舰艇巡洋舰以上为省名,驱护舰城市,大型导弹艇、巡逻艇、056级别的都用县级市或者一些比较小的地级市。更小的则只编号。杂役船也较少有名,通常是舰队名、性质名加舷号,比如“南油02(这个号我编的)”代表南海舰队小型油料船520号。大型补给舰用大型湖泊命名。大型登陆舰用山命名。潜艇用“长征”XXX表示核潜艇,“长城”XXX
科考船、试验舰和训练舰多用我国科学家、航海家命名。不过那艘86号风帆训练舰叫“破浪”又是使用形容词命名。这一点和英国比较类似。