Yahoo Answers is shutting down on May 4th, 2021 (Eastern Time) and beginning April 20th, 2021 (Eastern Time) the Yahoo Answers website will be in read-only mode. There will be no changes to other Yahoo properties or services, or your Yahoo account. You can find more information about the Yahoo Answers shutdown and how to download your data on this help page.

Good sites for practicing C programming?

I'm in a c programming class at college and it turns out I managed to get the worse professor on campus.

I'm not joking, I told the TAs for the subject who I had and the guy showed me how to access the online course so I'd actually learn something.

I'm still trying to pass the class though and am trying to find from sites to practice on. I like CodeWars, but find that its problems cover everything while in class we just got to loops.

Is there anything like CodeWars what lets you pick what you want to practice on?

2 Answers

Relevance
  • 2 years ago

    What you're going through isn't all that unusual. If I had to learn Fortran from the class I took (just to get credit for it...did all the learning on my own, beforehand) I probably wouldn't have. The instructor was a nice guy, and could actually code some, but was not really a teacher.

    If you're looking for free practice problems, I'd suggest the practice problems at HackerRank. You can get an idea of what they've got at:

    https://www.hackerrank.com/dashboard

    ...but you can't see details until you log in. I've changed my mind about this site. I'm still no fan of timed competitions, but they've put together a pretty good suite of practice problems since I looked at them a few years ago.

    Not perfect: some of the problem statements are missing important details that you won't find until after you submit. A couple of problems have broken test cases. Some of the server timing is suspect. My son used the C++ problem set to buff up his skills for his current job; and had a problem with timing out on one of the test cases for one of the problems. When I submitted the exact same copy-pasted code, it worked just fine.

    The C language practice set is pretty clean, though. Before your class is over, you should be able to do all of the problems marked "Easy" and most or all of the "Medium" problems. When you have trouble with a challenge, particularly with an easy one, go back to your textbook, notes, online docs, etc. to find out what you missed. A search at StackOverflow can help, too.

    Without a site, though, one thing you can do that will help--no matter what the instructor is like--is to get in the habit of trying everything out as soon as you learn it. When you learn something new, write code. Type up a main function, put the new feature in, and see whether it works the way you understood it. Don't wait for a homework question or programming assignment.

    Another suggestion is to take lecture notes on paper if at all possible. It gets more of your brain involved. Studies show that students retain more when taking handwritten notes than when using a keyboard. Either is better than no notes at all; taking notes improves retention *even if you don't look at the notes later*! If you have a question, write it down and underline it. Get an answer later; in office hours, in the book, from a TA or online...but get the answer.

  • EddieJ
    Lv 7
    2 years ago

    The great thing about programming is that you can let your compiler teach you. So focus on doing your assignment rather than spending time on exercises that you won't get credit for.

    If something isn't working, then experiment. Change something and see how that affects the output. Use trial and error. The compiler is NOT keeping track of your attempts.

    You can ask specific questions here -- but don't ask us to just do your assignment for you. You have to show us that you are making a sincere effort.

Still have questions? Get your answers by asking now.