LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Programming (https://www.linuxquestions.org/questions/programming-9/)
-   -   places on the internet to find projects for learning to program in C (https://www.linuxquestions.org/questions/programming-9/places-on-the-internet-to-find-projects-for-learning-to-program-in-c-810326/)

texasone 05-26-2010 08:14 PM

places on the internet to find projects for learning to program in C
 
Essentially, I am reading the book "Absolute Beginner's Guide to C (Second Edition)", but the biggest problem is that it doesn't have problems nor projects to practice programming. Unfortunately, I do not have the greatest of an imagination to create my own ideas for problems to solve. Does anyone know of any sites that have good problems/projects to work on when I learn throughout the book?
Thanks in advance

exvor 05-26-2010 08:40 PM

You know I had the same problem when I started learning C. I could never figure out what to program. What I did was build a simple database program that kept all the data in a linked list and saved that list to the drive and rebuild it. I even went as far as creating a set of libraires to interact with the database to make simple interfaces to it without having to reprogram the whole thing.

Some examples you could do would be a command line mp3 player
try and make a cat program. I did this one it was fun


What I would do is try and rewrite some of the basic command line programs. Ill admit I still probably couldn't make a decent get tho :(

theNbomr 05-27-2010 03:02 PM

So, once you have become a C master by reading the book, what will you do with your new-found skill? If you don't already have a vision for what you want to accomplish in programming, then you are wasting your time. If you do know what you intend to accomplish, then break off a piece of your objective, and write some code that tries to do some of it. Early into the learning process, you should be seeing that there are different elements to a project, which are standardized in some way: reading and writing files, manipulating strings, memory management, process management, IO of various sorts, user interface, etc. Try to break some larger project idea into smaller component parts, and start hacking at parts of that. Don't expect to write anything that will become a final part of any working project, but do think about the process. Re-write as soon as you realize you've identified a better way to do anything you've already done.
And for my standard reply to these kinds of questions, read these forums, and find all of the 'How do I do.... in C?' questions. Figure out how to do them, and see what others have come up with. There are often numerous hints and suggestions posted by experienced posters. Some of them are even correct and useful.

--- rod.

fruttenboel 05-27-2010 05:14 PM

Coronado enterprises used to make a very very good C tutorial. Try to locate one at simtel (or what's left of it). http://www.coronadoenterprises.com/t...cpp/index.html and http://www.simtel.net/search?q=coron....x=0&image.y=0

You learn to program in a debugger! So get a compiler with a grpahical user interface debugger with codeviews, variable views, breakpoints, single stepping, the lot.

Just make a lot of silly sources and see where you get stuck. Later, make the sources less and less silly. In a few weeks you're writing your own kernel. :O

The MIX Power C (for DOS) came with an excellent book with lots of examples. You might consider buying the compiler (USD 10) just for the book... They also published a video tape. http://www.mixsoftware.com/product/powerc.htm

fruttenboel 05-27-2010 05:19 PM

Quote:

Originally Posted by theNbomr (Post 3983355)
So, once you have become a C master by reading the book, what will you do with your new-found skill? If you don't already have a vision for what you want to accomplish in programming, then you are wasting your time. rod.

Now, now, now.

Our friend is just interested in ICT and wants to develop his skills. That's normal for engineers. Engineers always come up with a solution, for which they still need to find a matching problem. Tex is just a good engineer. He wants to learn and later see what he can use huis skills for. That's how our societry (at least, the European one) evolved. If we all had done only smart things, we would still be hunting sable tooth tigers in bear skins.

wje_lq 05-27-2010 10:36 PM

I think I agree with fruttenboel. Not all learning involves a "useful" goal. Aimless writing of C code to see what comes out is a good learning framework. People write novels that way, too. Children, when they build sand castles or play in the mud or play an unorganized game of softball in a vacant lot, are learning more than they realize.

One of my favorite C tutorials is here, or maybe you want to go straight to here.

fruttenboel 06-13-2010 04:17 PM

Quote:

Originally Posted by texasone (Post 3982367)
Essentially, I am reading the book "Absolute Beginner's Guide to C (Second Edition)", but the biggest problem is that it doesn't have problems nor projects to practice programming. Unfortunately, I do not have the greatest of an imagination to create my own ideas for problems to solve. Does anyone know of any sites that have good problems/projects to work on when I learn throughout the book?
Thanks in advance

While looking for somethin else I found the best webpage to visit for any coder, new, advanced or retired:

http://www.mindviewinc.com/Books/downloads.html

FREE books! No ties. Just books. And PERFECT to read. 1000 times better than the Head First books.


All times are GMT -5. The time now is 04:01 AM.