1. Fast food is bad for health.

2. Fast food is poor for health.

3. He is bad at swimming.
4. He is poor at swimming.

Is #2 correct? Can we use 'poor' instead of 'bad'?

I think both #3 and #4 are grammatical. Am I right?

All are grammatical, but in 1 and 2, you need "your" or "our" before "health."

Using "poor" instead of "bad" is probably better since "bad" is such a child's word!