Learn C Programming In Simple Steps!
Here's How

- How to learn C Programming? Isn't it too hard ?
Let me answer with an example from my university years.

I wasn't good at the higher mathematics. I wondered "How will I solve integrals? They are so hard!" Well, step by step I studied them. That was the key - little by little. Without jumping a single stair.

Advertise on this site. I promise you will like the rates :)

Fortunately, computer programming is way, way easier to handle. So, sit back, take your ear-to-ear smile :-) and follow the tutorial.
Each section here has a specific purpose:

Programming for beginners

If you have little or no experience as a developer start here.
This tutorial covers the basics of computer programming. It emphasizes the basic principles and logical thought.

It does not bother with syntax and a specific programming language.

Instead we learn the universal things about programming and design flow charts to describe our algorithms. After this tutorial you can transition to any programming language.

C tutorial

This guide covers the fundamentals of developing in C.

First you will learn about the software that you need to develop C programs. Then you will choose and install the one that you prefer. Then you will create your first program - the famous "Hello, world!".

By the end you will know how to work with data types, variables, conditional constructions, loops, arrays, functions and the king in C programming - pointers.

Number systems

In programming, it is often useful to know about binary and hex numeral systems. Here you will learn about them, how they work and why we need them.

I will show you how to convert between the different number systems. You can use the online converters to convert between binary, octal, decimal and hexadecimal.

Finally, you will learn how to write a console program in C that will do the conversion.

C Programming Language - Why C?

 - Why C? Isn't it too old?
Nope! And here you will see why. To explain why C is alive today and why it will be alive for a long time, we will see why it was created in the first place.

Then we will look at the standards(ANSI, C99, C11) and see that C evolves and gets even better with time. Finally we go through the advantages of the language.

C Keywords

Here you can see what every keyword in C does. Each keyword is described in details. The examples will help you see how each keyword could be used in practice.

Note that this is not meant to be a tutorial for the language. Use this section as a reference if you are unsure how exactly a given keyword works.

If you are looking to learn the language you should rather go to our ´╗┐tutorials, just above.


Most people learn better from video, rather than text. That is why I am creating online courses that teach you in a more convenient way.

For the beginners I usually recommend the general course on Computer Programming.
It is meant to be taken before you start with any specific programming language.

Programming Books

Reviews of the best intro to expert programming books. Depending on your need I will recommend you books on topics like:

  • C programming
  • Algorithms and data structures
  • Competition/Challenges
  • Programming for hardware: PIC microcontroller, Arduino
  • Job Interview
  • Others


Algorithms are the beauty of programming. Their choice separates the fast from the slow programs. One great thing about software development is that you don't need to reinvent the wheel every time. Learn the techniques, used through the years and then use them in your practice.


Recursion in C refers to the programming technique where a function calls itself. Depending on how this is done there are various types of recursion. To practice I've listed some problems that could be solved with recursion.

Computer Programming

This is a rather general information about computer programming. Here you can find answers to questions like "What is computer programming", "What is a programming language?", "How the computer understands text and what is ASCII?".

We will also talk about the history of the computer and other curious topics.

Examples Download

I believe, that examples are crucial when studying. A good example very often is the difference between a good understanding of the subject and that foggy:

    "Well, I have just read for an hour, but I still don't understand it!".

That's why, I supplement every explanation with a good example. Some of them are very short, some of them contain more than one function or even several files. The more complex examples are harder to follow in a web page. For that reason, I upload the source code for those examples in a zip files.

    You can download and test all examples from the "Examples Download" section. I urge you to do so! Testing in real environment really helps the learning process.

Ready to master C programming? Let's have some fun!

   Search this site: