In the case of printing, the HP ePrint ones generally work fine. Other brands work fine too as long as they purport to be AirPrint compatible.
Not sure about the other brands but the HP printers can be assigned its own email address to which anything you send there will be printed. This works with any phone/tablet even if cannot print directly. Works very well with Google Cloud print too. This obviously only applies to printing.
In the case of scanning you need to check the apps provided by the printer manufacturers available on the App Store. Not sure which ones support scanning.