Short answer: Yes, but...
You may only smoke in designated spots or you could be fined. Some cruise lines are also changing their policies to include being kicked off the ship if you are caught!
Check with staff if you are confused where the smoking sections is.
Ships may allow smoking in the casino. There is also usually a spot on deck for smokers that will include sun loungers and chairs.
Please note you CANNOT smoke in your cabin room or on your balcony. Do not count on others to not turn you in if they smell the smoke. I have read many cases of cruisers calling security on their neighbors when they smell any smoke.