smarty

noun
  1. a person who acts as if they are very intelligent or who shows off their knowledge
  2. Usage: informal; often used to show annoyance

Examples