石普字元周,徐州人。至正五年(1345)进士,授国史院编修官,后改任经正监经历。淮东淮西义军起事,朝廷方用兵之际,普一向以将略见称,同佥枢密院事董钥曾向朝廷推荐他的才能,恰好丞相脱脱讨伐徐州,便使石普从行。徐州平定后,论功行赏,迁升普为兵部主事。不久,又升为枢密院都事,随枢密院官守淮安。

张士诚占据高邮,普向丞相面陈破张之策,且说:“高邮恃有大湖之险,多是低凹沼泽地,骑兵不能去,如给我三万步兵,保证能攻下高邮。高邮一平定,濠泗便容易攻破,我愿为先锋,以忠义号召天下。”丞相认为他有壮志,命他担任山东民兵万户府事,招民兵万人随行。但这时汝中柏正当权,暗中破坏,将石普带的士兵减少一半。原先是同意石普自己可以相机做某些决定,但在动身时却又规定他要听淮南行省的节制。

石普的部队到达范水寨时,太阳已偏西,石普便下令部队开饭,深夜三刻,石普下令部队秘密转移到宝应,而军营中的更鼓伪装得像平时一样。部队到达宝应后,便立即下令登城,把旗帜插在城上,起义军的守军大惊溃散,石普便出榜安民,收回了宝应。诸将妒嫉石普立功,便水陆争进,乘胜拔十余寨,斩起义军数百。将抵高邮城时,石普分兵三路:一趋城东,准备水战;一为奇兵,以断后路;石普自带一路攻北门。义军不能支,退回城内。石普身先士卒,追击义军,并纵火烧城门。义军恐惧,谋弃城走。但这时朝廷的援军取观望态度,按兵不动;而且忌妒石普。总兵者派蒙古军千骑,突然出现在石普军队前面以夺取先入高邮之功。守城义军誓死抵抗,蒙古军胆怯后退,石普极力阻止他们,阻止不住,遭义军反击,大多坠入水中。

石普军溃散,义军乃乘机进击,石普率残兵抵抗,血战良久,仗剑大呼曰“:大丈夫当为国死,敢有不前进者,斩!”乃直入义军阵地,从者仅三十人。至傍晚,援军不至,受伤坠马,复步战数合。义军有谓“:此必头目,不可使逃走,要捉活的。”石普叱曰“:死贼奴,我即石都事,何云头目!”时右臂中枪,犹握枪力战,与从者皆战死。