Sorry, your browser is not supported
To have the best experience using Skillshare, we recommend that you use one of these supported browsers.

C Programming - From Beginner to Expert - Part(1/2)

John Mathews, Linux Enthusiast,Software Programmer,Consultant

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
18 Videos (3h 33m)
    • What is C

    • Getting Started

    • The First C Program, Compilation and Execution, Receiving Input

    • Instructions

    • Control Instruction, Summary

    • Decisions! More Decisions! - The if Statement

    • The if-else Statement - Use of Logical Operators

    • A Word of Caution - The Conditional Operators - Summary

    • Loops - The while Loop

    • The for Loop - The Odd Loop

    • The break Statement - The do-while Loop - Summary

    • Decisions Using switch

    • switch Versus if-else Ladder - The goto Keyword - Summary

    • The type of functions

    • Arguments to functions

    • Function definitions - Compound statements and declarations

    • Recursion

    • Scope: External, Local and static Variables - Summary


About This Class


What is the course about?

This is the first part of the series.It covers Introduction to C, The Decision Control Structure, The Loop Control Structure, The Case Control Structure and Functions

This course provides a thorough introduction to the C programming language which is the core of the UNIX/Linux operating system and other embedded systems. This is designed with a need to understand the C programming language starting from scratch. This comprehensive course will give you enough understanding on C programming language from where you can take yourself to higher level of expertise.

1. The First few lectures will cover syntax and grammar, and expose students to practical programming techniques.

2. The remaining lectures will focus on more advanced concepts involving Functions.

Programming assignments and laboratory exercises are required to do by students. Please remember that this is a serious course on programming. I believe that programming language like C cannot be learned in few hours. It required continuous practice. Students may have to put a lot of efforts in order to become expert in programming and make the best use of this course.

What kind of material is included?
1. This course consists of high quality training content using quality videos with industry oriented hands-on examples.

2. I have tried to include the juice of my 10 years of Programming experience in this course.

3. The focus is on giving real life essential tricks and skills.

4. This course will have sets of online programming assignments and objective type quizzes.

5. The problems in each lesson are easy and difficult. I suggest students to take this course with pen and paper handy. Note the important points and take part in discussions. The exercise is the most important part in learning any language. I advise students to take the problems after each section.

How long will the course take to complete?
1. This is the comprehensive course covering almost all the topics of C programming.

2. The course is around 6 hours in duration. I advise students to cover not more than one lesson/section per day and do not move to the next lesson/section without doing the exercise.

How is the course structured?
1. Lectures, Classroom Discussions and C Programming Lab Exercises at the end of each chapter.

2. A perfect blend of theory and programming.

Why take this course?
1. Learning C programming language is basic to learn all other programming languages such as C++, Java, Python, etc. Because, all other advanced programming languages were derived from C language concepts only.

2. This is the comprehensive course covering almost all the topics of C programming.

3. This course will tends to replace text books on C programming ie it will be a complete reference of C programming.

4. You will learn how programming languages work with data, what program flow is, and how to use functions, methods and routines.

5. You will also get step-by-step instructions on how to create simple and advance C programs and how to run them.

6. For the college going students, this course helps in improving grades in college curriculum and increases the chances at the final Campus Interview.

Course on Algorithms Concepts

Claim your spot now

I wanted to send you a quick message about my newly created video course on Algorithms and Data Structures! I really hope you will find this course to be a great resource for you.
1. Tired of finding good learning resources on Algorithms ?
2. Do you want to become a expert level Programmer ?
3. Join 20k worldwide learners who uses Algorithms and DS as part of their curriculum and Job.
4. As a bonus, get a free consultation about Algorithms, Data Structures, HTML, C and Java Programming languages.
5. So if you’re looking for knowledge, a rewarding adventure, and the advantage a future perspective can offer:

Claim your spot now

When you complete this course, you will be able to understand the basic terminologies and concepts of Algorithms for software development.  This covers Introduction to Algorithms, Arrays, Search, Greedy Algorithm, Sort, Subset, Stack Data Structures, Memoization, backtracking, Dynamic Programming, Depth First Search (DFS), Divide and Conquer.

You will be able to apply the roles of Algorithms in products and various components of the software product.
Improve your implementation capabilities with a solid grounding in data structures and going through various practice sessions to improve implementation ability.
This course will allow developers to build the concepts in algorithms and learn how to apply them in real world tasks.
This course will lay down the foundation of programming
Students taking this course will be able to write serious programs.
For college going students, this course will help in improving grades in college curriculum.

Visit to get discounts on my courses + additional free resources






Reviews (0)

John Mathews

Linux Enthusiast,Software Programmer,Consultant

As an programming enthusiast, I want to share my knowledge and interests here.

My name is John Mathews.

I started learning about programming since high school, dived in "Basic" first, which eventually made me major in Electronics and Communications.

After completing the college, in 2005, I started working in the software and system departments at large corporations. Since then I have grown my Linux skills at various levels. Through the years I've worked in many positions ...

See full profile