AP CS A HELP

I am currently taking AP CS A and I desperately need advice!
Before I get into this, I want to make it clear that comp sci is not a strong area of mine which is making this an even bigger issue.

My teacher is terrible and he fails to explain anything clearly, at this rate I have no clue how I am going to pass the ap exam/midterm.

1st quarter I received a 97. Sounds great, and makes it sound like I understand stuff but let me explain. There was one test which I got a B on originally but he let us retake and the questions were the exactly same with like one changed word so I got an A. Then there was project which someone in class helped me on so I got an A+ on that averaging out to a 97.

2nd quarter (in progress)- More than half of the class (including me) got an F (i know) on a test that he said was vital to understanding the rest of the course. But then he offered to bring your grade up to 100 if you went and conferenced with him for 40 minutes. So I went and he explained it but as I said he is awful at explaining and I still don’t understand the test that well. I tried asking questions but this guy is not comprehensible. Then we had a 2nd test (idk my score yet) but he posted the free response coding questions aka the hard part online by accident. So before i even took the test I had already gotten help from my father figuring out the answers. So I still don’t understand it but probably got a good grade. My father knows java but hasn’t used it in years, while he is some help I also need other resources

The real problem is that in a month I’m taking a midterm on all this stuff I don’t understand and need to do well. I am wondering if anyone has good resources to learn AP CS on your own (because I barely understand anything) and need to do well on this midterm. I am also wondering if anyone has advice/experience with a teacher like this?

I want to do well on the AP exam but keep in mind this man is the only CS teacher at the school. People usually score an average of about a 3 at my school which isn’t going to cut it for me.

Thanks!

codingbat is good for AP practice problems (it won’t teach content but its a good resource). Another thing we used in my AP Comp Sci class is a free textbook that goes with the java programming environment bluej. I don’t know if its the best book out there but its free if you want to check it out (just google bluej). Most of the AP review guides for computer science A are pretty bad bc they ask questions that go in way to much detail and are too technical compared to what’s on the exam but one of those might be a good resource for learning that stuff and so you know what topics you need.

I would recommend using a prep book to understand the concepts in the course and Codingbat/PracticeIt to do problems.