Hey for the last part of reading a file could you help me understand how it i want to seperate the two strings "Jim", "Salesales" and put them in seperate arrays but instead of a comma it has a space in between ? Would greatly appreciate thanks !
For people still confused on Pointers, I thought of a little analogy: Say your friend wants to know where you live. Think of your hometown as memory, with lots of houses being stored (variables), and addresses to locate them (pointers). You wouldn't show your friend, say, a picture of your house and expect them to find it quickly. Therefore, you would give your friend your house's address (a pointer), so they can locate it easily. Now, let's put it to proper terms. C wants to know what the variable you're referring to is. You have memory, with lots of variables being stored, and addresses to locate them. You can't give C your variable name and expect C to find it amongst all of your other variables, so you refer to its address as a pointer so C can easily locate it. Hope this helped :) Edit: thanks for all the love this comment got
I am 51 year old woman, who studied computer science at school. I really loved it, but then I got a rubbish computer science teacher and destroyed my love of the subject. I am now studying your course because I want to become a computer programmer. Thankyou for not putting ads in and for being an amazing, to the point, no waffle teacher. Honestly you are a good man and are truly inspiring people of all ages, sexes and nation xxxxx
@@kavorka8855 Thankyou my children have told me to go for it. Young people are amazing and limitless. Unfortunately we lose that and get frighten as we get older !
You're just too detailed and sequential. If we had lecturers like you at all universities, we would be overloaded with programmers in the world. Thanks man
they designed an almost 4 hr tutorial and they have not given any ads though they can earn lots of money from ads ....this shows how much they care for their viewers they deserve 100M subs for sure ....totally loved their course .....thanks to the free code camp team...
Really? I got around 5 ads. Anyway, it was more than worth it, so I sat through the 2 minute ads happily to help them with ad revenue. Besides, they probably make money through merchandise as they are a non-profit organisation with free TH-cam videos, and their website membership is also 100% free.
@Neil Dixit i watched this video 4 months ago there was no ad in between the video but now when I am watching this video ads are there.i think free code camp team took this comment seriously😂😅
1 hour and 45 minutes in and I understand more than I understood in one semester at the university. You definitely know how to teach, straight to the point. Thank you!
I got a 98% in my introduction to programming and algorithms class in C without reading any of the assigned material and SOLELY watching this video and googling a bit of logic so THANK YOU!!! HIGHLY recommend for beginners.
Yo been looking for a video like this for ages. EVERY other "beginner" video skips the first simple steps and starts off talking about stuff we noobz have no idea about. This dude is actually taking the time and it's very much appreciated!
Dear Sir, you are truly talented at explaining things in a logical and intuitive order. I have started a couple of tutorials and quit because the teacher gives explanations where he refers to things he will explain, not things he has explained. This is the first C tutorial I have followed flawlessly, because each new lesson depends only on the lessons before. And you are great at making your audience feel confident they understand. Thank you!
@@lukefox836 Let me guess. You already know C and are bored listening. This is a beginners course for people who might not have known what an IDE or compiler was before it. Maybe you were expecting a lesson for seasoned coders looking for lessons on C.
@@leno7492am not an Indian. But i want you to fucking remove the comment. Dont fucking promote Racism and Islamophobia. Fucking stop it! If u dont wanna watch Indian tutorials, just DONT!
I am a middle age woman who is trying to figure out what to do with my life after raising my 3 children. As I was taking CS50, my confidence dwindled, but this course did more than recovering my lost confidence. Thank you so much, you are such a fabulous teacher!!
the great thing about this course is that after every little part, he starts explaining previous functions as if it's the first time we see them and that makes it so much easier to instill those notions
This video was absolutely brilliant for anyone wanting to learn C. I am writing a program in C for an assignment and only have very limited experience in R and Python. This video made C easy to understand and didn't overcomplicate it focusing on key aspects. Definitely recommend watching it if your interested!
1:03:30 If you're using the code runner in VS Code and you're not getting the output you want, it's because you have to run the code in the Terminal instead of the Output. Go to Settings (Ctrl + ,), then search for "code runner", then turn on Code-runner: Run In Terminal.
21:00 variables 32:27 Data types 38:32 Printf 45:23 working with numbers 52:22 Comments 56:01 Constants 1:00:14 Getting User Input 1:12:08 Building a Basic Calculator 1:17:44 Building a Mad Libs Games 1:26:32 Arrays/Variables 1:36:44 Functions 1:45:38 Return Statement
This guy should be given the noble prize of programming and should be payed a million dollars to teach students in college This guy is truly a legend as well as freecodecamp
I was always afraid of programming, because my teacher ruined my interest. After watching your tutorial, I want to learn programming again. You are a good teacher.
00:21 Introduction 01:35 Basics of computer programming 03:49 Format specifiers 06:31 First computer program 07:27 Character sets & constants 08:55 Basic data types, int, char & float 09:52 Variable declaration & initialisation 14:17 Basic operators 17:12 Arithmetic instructions Arithmetic operations 18:18 Addition,Subtraction,Multiplication & Division 21:31 Area of Circle & Triangle 24:23 Simple Interest 25:44 Square & Cube 26:51 Total & average 29:00 SWAP two numbers Escape Sequences 32:14 Theory 34:26 Drawing a tree using escape sequences IF & IF ELSE 35:19 Syntax 40:17 Largest of two numbers 41:02 Positive or not 42:17 Greater or less than 10 43:08 Even/odd 44:09 Divisible by 5 44:59 Multiple of 7 45:45 Compare two numbers 46:55 Logical operators 50:07 3 numbers in ascending/descending order 53:01 Calculate discriminant & roots of a quadratic equation 54:29 Calculate grade 56:22 Check marriage eligibility 59:01 Conditional operators While & Do While Loop 01:00:47 Why do we need loops 01:02:24 DO-WHILE & WHILE loops Syntax 01:03:49 WHILE vs Do-WHILE loop 01:04:21 Increment & Decrement Operators 01:07:39 N numbers in sequence 01:09:53 N numbers in reverse order 01:11:10 First N even numbers 01:12:29 N odd numbers 01:13:40 Reverse order of a number 01:16:20 Sum of a number 01:18:48 Armstrong or not For loops 01:23:39 Syntax 01:27:27 Table of given number 01:29:40 Sum of a number FOR loops-Pattern Programming 01:32:34 Pattern programming theory 01:34:42 ◸ of * 01:37:51 ◺ of * 01:40:23 ◿ of * 01:43:38 ◹ of * 01:47:37 █ of * 01:50:39 ▵ of * 01:54:14 ▽ of * 01:56:58 ♢ of * 01:58:11 ◺ of numbers -vertical 02:01:01 ◺ of numbers -horizontal 02:02:51 ▵ of alphabets 02:05:48 ▵ mirroring alphabets 02:09:25 ◺ of integers with integer at the end Advance FOR Loop programs 02:11:47 Factorial 02:16:18 Prime numbers from range 02:22:29 Prime or not 02:27:43 Fibonacci series 02:33:29 Print digits, alphabets using loops 02:36:37 Factorial 02:40:30 Average of numbers 02:43:04 ASCII chart 02:44:21 Rectangular pattern of * 02:46:38 Rectangular pattern using ASCII characters Goto, break & Continue 02:48:59 goto keyword 02:51:12 break & continue keyword Switch case 02:53:39 The syntax of the switch case-control structure 02:55:54 Case-control structures in more detail 02:59:30 Print integers in words 03:00:36 Numbers in words in reverse order using switch case-control 03:02:29 Perform arithmetic operations based on the users choice Functions 03:04:06 What are functions? 03:06:25 Parametrised functions 03:09:18 Addition,subtraction,multiplication,division using functions 03:11:54 Factorial,prime or not & Fibonacci series using functions 03:14:07 Calculate square & cube using functions Arrays 03:16:14 Theory 03:18:11 Single dimensional arrays 03:22:49 Accept array elements & reprint 03:25:36 array elements in reverse order 03:28:11 Addition of array elements 03:30:05 Fibonacci series using arrays 03:32:20 max+min of an array 03:34:46 positive & negative elements of an array 03:37:37 array in ascending/descending order Multidimensional arrays 03:40:01 Theory 03:43:55 Accept MxN matrix & reprint 03:46:41 Add two MxN array matrices 03:48:00 Add array elements of two-dimensional arrays 03:49:10 Diagonal elements of a matrix 03:51:00 Add upper matrix elements 03:52:16 Add lower matrix elements 03:53:42 Multiplication of matrices 03:57:15 Transpose of the matrix Pointers 03:58:57 What are pointers? 04:00:53 Using pointers More on functions 04:02:47 Call by value & call by reference 04:06:49 Swap two numbers using parametrized functions 04:09:48 Scope of a variable 04:13:01 Recursion 04:14:21 Fibonacci series using recursion 04:18:30 Factorial using recursion 04:21:12 Passing arrays to a function Strings 04:25:12 What is a string? 04:28:07 Inbuilt functions 04:30:26 ASCII characters 04:31:19 string reverse, length, uppercase, lowercase & copy 04:33:06 Count alphabets, digits & symbols 04:34:40 Compare two strings 04:35:24 Concatenate two strings 04:36:10 Length of string 04:37:33 Copy a string from another 04:38:39 String uppercase 04:40:24 String lowercase 04:41:25 Join two strings 04:43:58 Count alphabets digits & symbols without using inbuilt functions 04:45:25 Compare two strings without using inbuilt functions 04:47:31 Count vowels 04:48:39 Reverse a string 04:50:36 Palindrome Structures 04:52:34 What are structures? 04:54:57 Create structure Employee, store values & reprint 04:56:22 Array of a structure 04:59:11 Structure within a structure File operations 05:03:36 What are the files? 05:08:06 Read+write to a file character by character 05:12:33 Read+write to a file line by line 05:15:23 Merge two files Command line arguments 05:17:05 Theory 05:18:50 Programs on command line arguments More 05:21:46 Datatypes 05:27:24 Escape sequences 05:30:39 Type casting 05:32:50 Enumeration 05:35:30 Bitwise operators 05:42:31 Unions
I’m 20 minutes in just trying to regain my confidence after being stuck on CS50x week 3, realising I have learned basically next to nothing. You explain everything so much better, although I’ve only just began this video, I can already tell it’s going to help me immensely. Thank you
I learnt more from this video than I did with 100 hours of class at college Thank you so much🙏🙏 He is such a great teacher. I wish my teacher was at least 1% asgood as he is 😢😪
i thought I was gonna fail my c course this semester cause I wasn't understanding what my professor was saying but you changed my life. playing with code is actually fun for me now! i love you. ok bye.
Thank you Mike!, for all this courses and helping the people to improve in life, this is not a lot but one day I will make sure to help more people like you.
I enrolled at university last year for bachelors in computer systems engineering so it obviously involves a lot of coding. I have never learned to code before and thanks to my lecturer in the first year, he completely ruined coding for me, by dodging all the basics🤬 Here I am in my second year, trying to make the impossible happen and learn C within 2 days so that I can submit an assignment that is solely based on it. Your tutorials are extremely helpful and I can finally hope to create a functional code. Thank you, I'm legit in tears 😭 Never understood C before or coding for that matter 😫
Quick note with the if statements part, if you want to optimise your code as much as possible I suggest you learn logic true/false tables. It will avoid the double up that occurs from some of these examples. For instance the function for finding the max of 3 numbers could be simplified to the following. int max(int num1, int num2, int num3){ if(num1 >= num2 && num1 >= num3){ return num1; } else if(num2 >= num3){ return num2; } return num3 } This not only saves a few lines, it uses less variables, uses 1 less else statement and the second if statement is a much simpler computational task. Not really a big deal until your messing with imbedded hardware like arduinos, but still useful and good practice to try to make code run as quick as possible.
Here's a note if anyone is reading this and wants to know of better ways to do things with loops: I think there's a better way for scalability reasons. First, I'd change my function so it accepted both an integer array and an integer called "length". I'd set max to be the first element, then I'd iterate through all the array elements and compare them to max. If a number is larger than max, set max to the new number. I'd loop until my index was equal to "length". If C arrays had a built-in length property, I'd remove the length parameter and just check if the index is less than Array.Length ;)
This what programmers call as an optimisation isn’t? This fewer lines of code will save lot of CPU and memory resource thus making the programme execute faster on the same hardware.
I think the following would be even faster, as long as the compiler doesn't translate your function to this: int fastmax(int a, int b, int c) { return (a > b) * (a > c) * a + (b > a) * (b > c) * b + (c > a) * (c > b) * c; } It takes the result (0 or 1) of the comparisons and multiplies them with each other and the actual number. a = 1, b=2, c=3 will thus result in: (1 > 2) * (1 > 3) * 1 + (2 > 1) * (2 > 3) * 2 + (3 > 1) * (3 > 2) * 3 or 0 * 0 * 1 + 1 * 0 * 2 + 1 * 1 * 3 Eliminating branches speeds up calculations, because your CPU can already load the following operations, because they will always be the same and not depend on whether the if-block or the else-block is going to be executed.
great content! I appreciate how you've explained everything from scratch, that too in such a clear and precise manner. 3 hours down (took 6 to get here), and I'm still with you! your narration style is perfect, keeps you calm AND engaged. thank you!
For those who cannot run the code in the section "working with numbers", you also need to put "#include " to include the math library in order for it to be defined and run without error.
Thank you! I really wish I had started here when learning C - I have tried so many courses and materials to learn C and this finally made everything stick/filled in the gaps. I know some people are commenting about all the times you mentioned that "A pointer is just a memory address, that's all" but I (and I'm sure others) have gotten so many complicated explanations about pointers that it's really helpful to hear multiple times.
I'm a graduate and through out this pandemic , I developed an interest in programming as i never understood programming . During my 4 years of engineering our professor couldn't make us interested in this subject. Your approach is very friendly , keep up the good work.
Hi! What field did you graduate in? And how come you didn't "learn" programming, like how would you pass a programming course that way lol... Anyways this video was frigging awesome to learn from!
@@Pranavryan oh ok, thanks! I haven't started my program just yet but I'm a bit baffled to how many with actual software graduates, still seem uncertain about the basics... I'm just gonna sit here for 5 years and grind different concepts, I would expect to learn at least something impressive lol.
this guy did in less than 4 hours what my professors couldn't do in entire semesters, made an effective and easily digestible lesson. I like that the sections and the examples in them were concise but still included thoroug explanations whenever there was something unfamiliar on the screen. a big misstep that a lot of professors do is either assume you already know certain things, or don't care whether you do or don't, and then they sprinkle in these seemingly random ideas you've never seen before with what they're trying to teach you and don't actually bother to explain them. this man did a fantastic job communicating these concepts, thank you very much for offering your teachings, good sir!
Just finished this amazing course! Since I had previous experience with python, I was familiar with most of the concepts in this video, and this made me pretty confident in coding in C. And the fact that it is 100% free really amazes me. Great content out there!
I just finished watching the entire tutorial. It's very helpful and Mike explains the content very well. I've definitely learned a lot and would highly recommend this to others if you haven't watched this already.
Didn't get it? Can someone explain it to me? I'm a civil Engineer wanting to switch to IT, so it'll be nice if someone clears this up, coz this looks kind of a technical pun
@@cosmiclyrics2307 The while loop repeats a certain code inside it while the statement provided is true. In this case while you're outside, which will be true forever because once the men goes outside there's nothing to evaluate that statement to false. So he will just continue buying milk in a loop. Hope that clears it up.
If you've just started learning C programming, congratulations on taking the first step! C is a powerful and widely-used programming language, and mastering it can open up many opportunities. Here are some tips to help you along your learning journey: 1. Understand the Basics: Begin by grasping the fundamental concepts of C programming, such as variables, data types, operators, control structures (if-else, loops), and functions. Build a strong foundation in these core concepts before moving on to more advanced topics. 2. Practice, Practice, Practice: The key to becoming proficient in programming is to write code regularly. Solve coding problems, work on small projects, and experiment with different concepts. The more you practice, the better you'll understand the language. 3. Break Down Problems: When faced with a programming challenge, break it down into smaller, manageable parts. Solve each part step by step, testing and debugging as you go. This approach will make complex problems more approachable. 4. Read and Analyze Code: Study well-written C code to understand how experienced programmers structure their programs, use libraries, and implement algorithms. Reading and analyzing code will improve your understanding and expose you to different coding styles. 5. Use a Good IDE: Choose a reliable Integrated Development Environment (IDE) that provides features like code highlighting, auto-completion, and debugging tools. Popular options for C programming include Code::Blocks, Dev-C++, and Visual Studio Code with C/C++ extensions. 6. Understand Memory Management: C gives you manual control over memory management. Learn about concepts like stack and heap memory, pointers, and memory allocation functions like malloc() and free(). Proper memory management is crucial to avoid memory leaks and unexpected behavior. 7. Debugging Skills: Debugging is an essential skill in programming. Learn how to use a debugger to step through your code, set breakpoints, and examine variables. Understanding the debugging process will help you identify and fix issues more efficiently. 8. Join a Community: Engage with fellow C programmers by joining online forums, coding communities, or local meetups. Interacting with others who are learning or already proficient in C can provide valuable insights, code reviews, and support. 9. Read Documentation: Make it a habit to read the official C documentation, like the C standard library functions and language specifications. Understanding the available functions and their usage will help you write more efficient and robust code. 10. Keep Learning: Programming languages and technologies evolve over time. Stay up to date with the latest C programming trends, new features, and best practices. Explore additional resources like books, online tutorials, and video courses to enhance your knowledge. Remember, learning programming takes time and effort. Don't get discouraged by challenges or mistakes. Embrace them as opportunities to learn and improve. With dedication and consistent practice, you'll become a skilled C programmer. Good luck!
Here's my progress: Day 1: 00:00 to 45:23 Day 2: 45:23 to 1:12:06 Day 3: 1:12:06 to 1:17:43 (I had some other stuff to do so only did one part lol) Day 4: 1:17:43 to 1:45:35 (calling the functions does not work on my IDE, its devc++, idk if its because the version is new or if the IDE is different, either way, im having funn, i know im going slow tho) Day 5: 1:45:35 to 1:58:12 (so i can call functions now but i dont understand the concept of calling it and i dont get parameters either so thats awesome) Day 6: 1:58:12 to 2:07:09 ( i understand calling and parameters now yayy amd if statements are sm fun omg) Day 7: 2:07:09 to 2:29:43 (I've learnt alot at school too but structs are new ) Edit: I'm kinda busy but we're learning to code in C at school but I'll continue soon.
You are amazing for making this video. My programming class got put online randomly and my teacher does not actually teach anything. He just has a 600 page powerpoint instead. You are so much more helpful.
1:29:20 Only LOST Fans will get it! Dude you rock!!! I have never seen a programmer with such a confident, relaxed and smart attitude! Thank you for making all these tutorials!
i am actually a data science student. it was because of you that i fell in love with python. now that i am learning C i came back to watch once again your tutorial. keep going bro. you're the best so far. hope you'll read my comment.
I'm actually learning this in the hopes of landing a future job without going into debt! Probably not with C though, I like to understand how things work to better use them, I figure learning C is about the equivalent of that.
I love you so much bro, you are my savior! I spend the whole morning learning C++ from you with just experience from using Lua. I took the C++ placement test this afternoon and got a 70.45% (70% to skip the fundamental class 1336). I get to skip a 4-hour semester class with just 4 hours from you man.
i just watched this before my exam and its 2 am rn, having exam at 11am this same day and i can say this is very helpfull for just one time listening. actually insane and i love you guys. keep up the work im gonna come back here. got yourself a new sub
Hey, Wooow such an amazing teacher, he teaches C language so scientifically, that it's actually relaxing and confidence boosting to learn from his course.
That is just a syntax, anyone is capable of understanding it, even the greatest of dimwits. There is much more depth to actually using this knowledge to solve the problems and program
I want to show my appreciation and respect to the instructor and all the organizing team to let this awesome tutorial to be able to put on TH-cam. I had a great time learning this language, and it really did help me a lot! Thanks again for this awesome journey!! Love from Taiwan.
I just finished this full tutorial. This is my first programming language that I learnt. Thank you so much for such detail oriented work. Really appreciate it. ☺
Even I just know a little English, but I still get your lesson in a clear way! Thanks a lot for your English accent particularly and your knowledge in general!
please if you are joking about killing urselves it's not funny but if you are serious both of you pleaaaase don't i promise it gets better, no matter how hard it is now.
Thanks for this free course, I am begining with C and the truth is that I have been having problems with the algoritms. The course has been very interesting and very useful. Thanks for all.
More than a year ago, I learnt HTML from this guy and I'm still doing it but now I'm moving to embedded systems engineering and I'm here via a recommendation, wish me luck
Thanks Dude! This video is really getting me into C basics, as a complete begginer and starting to study Computer Science you helped me a lot! Still half a video to watch and at this point I feel that I'v learned so much! My journey beggins here. You were part of it, thank you.
@@saadfathallah5043 Well you will grab majority of the concepts you require, its definitely worth while watching. However, you would have to be creative, you should be able to use everything taught in the video and understand what each thing is doing. Because with university/college, you would be given something to do, and it would require you to use many different kinds of the coding taught in C, to be able to create the program they asked for. So memorising how the code goes about wouldn't help at all. Don't memorise, understand what you’re exactly doing, is what im saying in summary.
Hey man! Thanks for taking the time to put this together! I am stuck in quarantine without a job atm and decided now might be a good time to learn coding like I have thought for a while, I studied a bit of C# in high-school, but it was a while ago now and this was a very good starter video explaining the basics. :)
I have been stuck on Week 2 of CS50x longer than I'd like to say and using this course for supplementary understanding has help me gain SO MUCH clarity on the topic. Better than the Harvard class if you ask me by far! Thank you!
Your way of explaining and teaching is awesome. Some one with virtually no programming experience like me can learn programming. Thank you for your efforts.
Gosh this guy's amazing, like he gives the little pertinent details, i'm amazed. this really helped. keep up with this. you deserve the best for saving a lot of people, especially students
This video is very useful, thank you for helping me refresh my memory. I noticed in the For Loop, you don't need the 'int i = 1' before the For Loop, you can use 'for (int i = 0; i < 6; i++)', which allows for one less line.
Coming from a c#/js background here and it's interesting how familiar everything is! Like there are some "quirks" but otherwise it's all very familiar, more than I thought given the age differences. Switch statement seems to be identical. Struct seems to be a model but probably only superficially.
Such systematically crafted and designed course. Thank You so much Sir, you explained everything so flawlessly, now I am feeling confident of scoring full marks in my college exam.
I remember Mike starting these tutorials 2 years ago. I was lying in bed listening to this today and i was like " who is this guy?" Everything seemed to flow so naturally and conversationally. This is a masterpiece of teaching that only 1-in-a-thousand teachers will ever achieve. If he was a University level teacher, his work would be sought out and legend. Unbelievable.
Click the "JOIN" button below the video to support freeCodeCamp.org!
wrうぇyr
dgdgつrytgyfsrlvhjfsっghdりersghdhusjr
@@S.Melectric
Aaaa
Hey for the last part of reading a file could you help me understand how it i want to seperate the two strings "Jim", "Salesales" and put them in seperate arrays but instead of a comma it has a space in between ? Would greatly appreciate thanks !
Aaaaaaaaaaaaqaq q qaaaqaqaqaqqaaqqa Lee aqp@
For people still confused on Pointers, I thought of a little analogy:
Say your friend wants to know where you live. Think of your hometown as memory, with lots of houses being stored (variables), and addresses to locate them (pointers). You wouldn't show your friend, say, a picture of your house and expect them to find it quickly. Therefore, you would give your friend your house's address (a pointer), so they can locate it easily.
Now, let's put it to proper terms.
C wants to know what the variable you're referring to is. You have memory, with lots of variables being stored, and addresses to locate them. You can't give C your variable name and expect C to find it amongst all of your other variables, so you refer to its address as a pointer so C can easily locate it.
Hope this helped :)
Edit: thanks for all the love this comment got
Thanks
Thanks dude
Thanks G!
i literally learned pointers this same way 3 years ago
Still confused
I am 51 year old woman, who studied computer science at school. I really loved it, but then I got a rubbish computer science teacher and destroyed my love of the subject. I am now studying your course because I want to become a computer programmer. Thankyou for not putting ads in and for being an amazing, to the point, no waffle teacher. Honestly you are a good man and are truly inspiring people of all ages, sexes and nation xxxxx
There is no age requirement for education :“Seek knowledge from the Cradle to the Grave”
Good Luck :)
best wishes to you!
@@savagescientist3835 Thankyou x
@@kavorka8855 Thankyou my children have told me to go for it. Young people are amazing and limitless. Unfortunately we lose that and get frighten as we get older !
43 y/o applied math/stats person going into C. Good luck getting back to it! I love hearing about people who are lifetime learners.
0:00:00) Introduction
⌨️ (0:01:22) Windows Setup
⌨️ (0:05:02) Mac Setup
⌨️ (0:09:04) Hello World
⌨️ (0:12:51) Drawing a Shape
⌨️ (0:20:56) Variables
⌨️ (0:32:25) Data Types
⌨️ (0:38:32) Printf
⌨️ (0:45:22) Working With Numbers
⌨️ (0:52:20) Comments
⌨️ (0:56:00) Constants
⌨️ (1:00:13) Getting User Input
⌨️ (1:12:08) Building a Basic Calculator
⌨️ (1:17:43) Building a Mad Libs Game
⌨️ (1:26:29) Arrays
⌨️ (1:36:44) Functions
⌨️ (1:45:37) Return Statement
⌨️ (1:53:21) If Statements
⌨️ (2:07:11) Building a Better Calculator
⌨️ (2:14:51) Switch Statements
⌨️ (2:21:27) Structs
⌨️ (2:29:43) While Loops
⌨️ (2:37:48) Building a Guessing Game
⌨️ (2:50:11) For Loops
⌨️ (2:59:05) 2D Arrays & Nested Loops
⌨️ (3:09:10) Memory Addresses
⌨️ (3:17:20) Pointers
⌨️ (3:27:41) Dereferencing Pointers
⌨️ (3:32:37) Writing Files
⌨️ (3:41:52) Reading Files
thanks man
@@vectorentertainment1733 he just copy pasted it from the description
@@vincegilligan942 exactly
@@arslangul6872 he copy pasted
@@arslangul6872 hiii
You're just too detailed and sequential. If we had lecturers like you at all universities, we would be overloaded with programmers in the world. Thanks man
seeing a felow Nigerian. Thank you Adebayo,you are right. I'm Afolarin!
not really because the dude introduces structs before while loops XD
tbf we are overloaded with programmers already
youtube.com/@techtutorials8859
@@alexstanley3378 eh not really
*copy pasted from description because i use mobile
Course Contents
⌨️ (0:00:00) Introduction
⌨️ (0:01:22) Windows Setup
⌨️ (0:05:02) Mac Setup
⌨️ (0:09:04) Hello World
⌨️ (0:12:51) Drawing a Shape
⌨️ (0:20:56) Variables
⌨️ (0:32:25) Data Types
⌨️ (0:38:32) Printf
⌨️ (0:45:22) Working With Numbers
⌨️ (0:52:20) Comments
⌨️ (0:56:00) Constants
⌨️ (1:00:13) Getting User Input
⌨️ (1:12:08) Building a Basic Calculator
⌨️ (1:17:43) Building a Mad Libs Game
⌨️ (1:26:29) Arrays
⌨️ (1:36:44) Functions
⌨️ (1:45:37) Return Statement
⌨️ (1:53:21) If Statements
⌨️ (2:07:11) Building a Better Calculator
⌨️ (2:14:51) Switch Statements
⌨️ (2:21:27) Structs
⌨️ (2:29:43) While Loops
⌨️ (2:37:48) Building a Guessing Game
⌨️ (2:50:11) For Loops
⌨️ (2:59:05) 2D Arrays & Nested Loops
⌨️ (3:09:10) Memory Addresses
⌨️ (3:17:20) Pointers
⌨️ (3:27:41) Dereferencing Pointers
⌨️ (3:32:37) Writing Files
⌨️ (3:41:52) Reading Files
Thanks a lot 😊
thank u
Thanks
Thanks man
Shoutout to other students trying to learn a semester of classes in 1 night, we can do it D':
Lolll a programmer's life
😂😂
They teach c in uni?
@@atifmujeeb7222 yeah, my uni just does one class of it and mixes the command line into the class.
you literally can't watch this at night, it's completely white, if you try to watch it at night you will go blind
or at day too
they designed an almost 4 hr tutorial and they have not given any ads though they can earn lots of money from ads ....this shows how much they care for their viewers they deserve 100M subs for sure ....totally loved their course .....thanks to the free code camp team...
@@IndianPenTapperIPT yeah but it you need it to run your code, if you have a way to run C code with notepad++ then its fine to get notepad++
quangluu96 what if u use default notepad for coding 😂😂😂😂😂
@@IndianPenTapperIPT I don't know. If you have a Github account, you can use CS50 IDE or CS50 Sandbox, but you need to know a few terminal commands.
Really? I got around 5 ads. Anyway, it was more than worth it, so I sat through the 2 minute ads happily to help them with ad revenue. Besides, they probably make money through merchandise as they are a non-profit organisation with free TH-cam videos, and their website membership is also 100% free.
@Neil Dixit i watched this video 4 months ago there was no ad in between the video but now when I am watching this video ads are there.i think free code camp team took this comment seriously😂😅
I knew nothing about programming a month ago, and this guy helped me pass the course
SAMEEEE
Good luck, you can do it, just be really dedicated
@@Mesling_ it's been 3 months how did u do mate
@@Mesling_so?
nah im too lazy@@aboubakrbou9502
Literally this is what my 1st semester was all about and he even explained the topics better within just 3 hours!
Yes absolutely
Well said.
In Nigeria we say, School na scam 😅
Fvck college
You go get em grandma
1 hour and 45 minutes in and I understand more than I understood in one semester at the university. You definitely know how to teach, straight to the point. Thank you!
I agree
university? i hate my school for making me learn this in sophomore /grade 10
I got a 98% in my introduction to programming and algorithms class in C without reading any of the assigned material and SOLELY watching this video and googling a bit of logic so THANK YOU!!! HIGHLY recommend for beginners.
NOICE
i can barely understand my lecturer, thank god this guy exists
are you software enginerr
Well, you have already missed a lot.
@@aprilmisc freaking same bro, and not to be offensive or anything but his accent and the way he speaks (not accent) is just so confusing
Yo been looking for a video like this for ages. EVERY other "beginner" video skips the first simple steps and starts off talking about stuff we noobz have no idea about. This dude is actually taking the time and it's very much appreciated!
Dear Sir, you are truly talented at explaining things in a logical and intuitive order. I have started a couple of tutorials and quit because the teacher gives explanations where he refers to things he will explain, not things he has explained. This is the first C tutorial I have followed flawlessly, because each new lesson depends only on the lessons before. And you are great at making your audience feel confident they understand. Thank you!
Tim Crinion totally agrees
Speak for yourself. He repeats himself too much -- just take a breath dude.
@@lukefox836 Let me guess. You already know C and are bored listening. This is a beginners course for people who might not have known what an IDE or compiler was before it. Maybe you were expecting a lesson for seasoned coders looking for lessons on C.
@@leno7492am not an Indian. But i want you to fucking remove the comment. Dont fucking promote Racism and Islamophobia. Fucking stop it! If u dont wanna watch Indian tutorials, just DONT!
@@leno7492 Indians are awesome. I have learned a lot from Indian tutorials in programming and computer related. I truly thank them and i'm grateful.
this guy is everywhere. like how are u able to store that much language in ur head! crazyy respect!!!!!!!!
I am a middle age woman who is trying to figure out what to do with my life after raising my 3 children. As I was taking CS50, my confidence dwindled, but this course did more than recovering my lost confidence. Thank you so much, you are such a fabulous teacher!!
@@mschecter0078 I feel that man. We're all gonna make it
Me too. CS50 has been tough. I took a break to consume some content on "basics" and this channel has been gold.
YOU GOT THIS!!!
hey fellow middle aged woman learning to code here! You rock!
the great thing about this course is that after every little part, he starts explaining previous functions as if it's the first time we see them and that makes it so much easier to instill those notions
Shout out to everyone who are trying to utilize this quarantine to do something productive.
yass but I have to tho 😭
ayy ya caught me!
Why don't math functions like pow,sqrt work with %d
@@rezaulimam9449 I believe you have to add the math library. I used the gcc compiler on linux and i ran into that error.
i just wonna be hacker and fukk everyone up
This video was absolutely brilliant for anyone wanting to learn C. I am writing a program in C for an assignment and only have very limited experience in R and Python. This video made C easy to understand and didn't overcomplicate it focusing on key aspects. Definitely recommend watching it if your interested!
engineering first year whole syllabus in 4 hrs
NOICE
Is dis enough for preparation fr our finals???
@@ajazalmas7132 for practical yes but theory depends on ur textbook
wait really?
2 hours if you watch it 2x speed ;)
@@joelperpetua3929 big brain
The most forwarding teacher on the earth. Straight to the point, precise, simple !!! We all want you as a TEACHER !!!
1:03:30
If you're using the code runner in VS Code and you're not getting the output you want, it's because you have to run the code in the Terminal instead of the Output. Go to Settings (Ctrl + ,), then search for "code runner", then turn on Code-runner: Run In Terminal.
You're the reason I'm in the comments. THANK YOU!!
@@smarquis7 happy to help. :)
yoou are amazing!~!! i had a big problem with that one!!!!
thank you very much!!!
@@kokiouxristina6042 Happy to help :). Enjoy C.
A hero which don't uses cap. Thank u man
21:00 variables
32:27 Data types
38:32 Printf
45:23 working with numbers
52:22 Comments
56:01 Constants
1:00:14 Getting User Input
1:12:08 Building a Basic Calculator
1:17:44 Building a Mad Libs Games
1:26:32 Arrays/Variables
1:36:44 Functions
1:45:38 Return Statement
Thanks
thxxx man
Nice
thank you
thank you
Shout out to the people taking the initiative and doing this themselves.
I had C in my last semester and I totally understood it because of you. Please do a Java tutorial, you are really great at this.
@@transportenthusiast11 Thanks G
This guy should be given the noble prize of programming and should be payed a million dollars to teach students in college
This guy is truly a legend as well as freecodecamp
He's taught me more in an hour than my lecturer in the first month of my programming semester.
@@alephanull1953 just had to do it lol
He taught C, C++, Python, Ruby.
@@wateryagarvideos5186 wats is name?pls
I agree
I was always afraid of programming, because my teacher ruined my interest. After watching your tutorial, I want to learn programming again. You are a good teacher.
hows it going tho
00:21 Introduction
01:35 Basics of computer programming
03:49 Format specifiers
06:31 First computer program
07:27 Character sets & constants
08:55 Basic data types, int, char & float
09:52 Variable declaration & initialisation
14:17 Basic operators
17:12 Arithmetic instructions
Arithmetic operations
18:18 Addition,Subtraction,Multiplication & Division
21:31 Area of Circle & Triangle
24:23 Simple Interest
25:44 Square & Cube
26:51 Total & average
29:00 SWAP two numbers
Escape Sequences
32:14 Theory
34:26 Drawing a tree using escape sequences
IF & IF ELSE
35:19 Syntax
40:17 Largest of two numbers
41:02 Positive or not
42:17 Greater or less than 10
43:08 Even/odd
44:09 Divisible by 5
44:59 Multiple of 7
45:45 Compare two numbers
46:55 Logical operators
50:07 3 numbers in ascending/descending order
53:01 Calculate discriminant & roots of a quadratic equation
54:29 Calculate grade
56:22 Check marriage eligibility
59:01 Conditional operators
While & Do While Loop
01:00:47 Why do we need loops
01:02:24 DO-WHILE & WHILE loops Syntax
01:03:49 WHILE vs Do-WHILE loop
01:04:21 Increment & Decrement Operators
01:07:39 N numbers in sequence
01:09:53 N numbers in reverse order
01:11:10 First N even numbers
01:12:29 N odd numbers
01:13:40 Reverse order of a number
01:16:20 Sum of a number
01:18:48 Armstrong or not
For loops
01:23:39 Syntax
01:27:27 Table of given number
01:29:40 Sum of a number
FOR loops-Pattern Programming
01:32:34 Pattern programming theory
01:34:42 ◸ of *
01:37:51 ◺ of *
01:40:23 ◿ of *
01:43:38 ◹ of *
01:47:37 █ of *
01:50:39 ▵ of *
01:54:14 ▽ of *
01:56:58 ♢ of *
01:58:11 ◺ of numbers -vertical
02:01:01 ◺ of numbers -horizontal
02:02:51 ▵ of alphabets
02:05:48 ▵ mirroring alphabets
02:09:25 ◺ of integers with integer at the end
Advance FOR Loop programs
02:11:47 Factorial
02:16:18 Prime numbers from range
02:22:29 Prime or not
02:27:43 Fibonacci series
02:33:29 Print digits, alphabets using loops
02:36:37 Factorial
02:40:30 Average of numbers
02:43:04 ASCII chart
02:44:21 Rectangular pattern of *
02:46:38 Rectangular pattern using ASCII characters
Goto, break & Continue
02:48:59 goto keyword
02:51:12 break & continue keyword
Switch case
02:53:39 The syntax of the switch case-control structure
02:55:54 Case-control structures in more detail
02:59:30 Print integers in words
03:00:36 Numbers in words in reverse order using switch case-control
03:02:29 Perform arithmetic operations based on the users choice
Functions
03:04:06 What are functions?
03:06:25 Parametrised functions
03:09:18 Addition,subtraction,multiplication,division using functions
03:11:54 Factorial,prime or not & Fibonacci series using functions
03:14:07 Calculate square & cube using functions
Arrays
03:16:14 Theory
03:18:11 Single dimensional arrays
03:22:49 Accept array elements & reprint
03:25:36 array elements in reverse order
03:28:11 Addition of array elements
03:30:05 Fibonacci series using arrays
03:32:20 max+min of an array
03:34:46 positive & negative elements of an array
03:37:37 array in ascending/descending order
Multidimensional arrays
03:40:01 Theory
03:43:55 Accept MxN matrix & reprint
03:46:41 Add two MxN array matrices
03:48:00 Add array elements of two-dimensional arrays
03:49:10 Diagonal elements of a matrix
03:51:00 Add upper matrix elements
03:52:16 Add lower matrix elements
03:53:42 Multiplication of matrices
03:57:15 Transpose of the matrix
Pointers
03:58:57 What are pointers?
04:00:53 Using pointers
More on functions
04:02:47 Call by value & call by reference
04:06:49 Swap two numbers using parametrized functions
04:09:48 Scope of a variable
04:13:01 Recursion
04:14:21 Fibonacci series using recursion
04:18:30 Factorial using recursion
04:21:12 Passing arrays to a function
Strings
04:25:12 What is a string?
04:28:07 Inbuilt functions
04:30:26 ASCII characters
04:31:19 string reverse, length, uppercase, lowercase & copy
04:33:06 Count alphabets, digits & symbols
04:34:40 Compare two strings
04:35:24 Concatenate two strings
04:36:10 Length of string
04:37:33 Copy a string from another
04:38:39 String uppercase
04:40:24 String lowercase
04:41:25 Join two strings
04:43:58 Count alphabets digits & symbols without using inbuilt functions
04:45:25 Compare two strings without using inbuilt functions
04:47:31 Count vowels
04:48:39 Reverse a string
04:50:36 Palindrome
Structures
04:52:34 What are structures?
04:54:57 Create structure Employee, store values & reprint
04:56:22 Array of a structure
04:59:11 Structure within a structure
File operations
05:03:36 What are the files?
05:08:06 Read+write to a file character by character
05:12:33 Read+write to a file line by line
05:15:23 Merge two files
Command line arguments
05:17:05 Theory
05:18:50 Programs on command line arguments
More
05:21:46 Datatypes
05:27:24 Escape sequences
05:30:39 Type casting
05:32:50 Enumeration
05:35:30 Bitwise operators
05:42:31 Unions
thank you!
thanks bro...awsome
I can fell howmuch you have impressed with this tutorial...It makes u to write a comment like this...wonderful...👍🔖
Thanks a lot and God bless
Wow Thanks a lot
I’m 20 minutes in just trying to regain my confidence after being stuck on CS50x week 3, realising I have learned basically next to nothing. You explain everything so much better, although I’ve only just began this video, I can already tell it’s going to help me immensely. Thank you
You and I both. I had to take a break from CS50x.
hey can u plz help me in downloading c compiler the code they are saying to write is showing errors pleaseeeee!!!
@@rash5452 What is the error? And what device are you using (Mac/Windows)?
@@rash5452 just follow the steps he mentioned it should work for everyone.
@@bellillechery2761yeah, like they use entirely different IDE that is different from the rest
Essential shortcuts for CodeBlocks
Use *Ctrl+D* to duplicate line in Codeblocks
*Ctrl+Shift+C* to mark as comment
*Ctrl+Shift+X* to unmark as comment
Essential shortcuts for CodeBlocks
Don't use CodeBlocks.
@@jamesdickerson8645 use what
I learnt more from this video than I did with 100 hours of class at college Thank you so much🙏🙏
He is such a great teacher. I wish my teacher was at least 1% asgood as he is 😢😪
it happens when you actually pay attention :P
testing beta7 you’re an idiot. Everyone learns different other than just simply paying attention
thats the time it takes to beat skyrim about 5 times
Hey
i thought I was gonna fail my c course this semester cause I wasn't understanding what my professor was saying but you changed my life. playing with code is actually fun for me now! i love you. ok bye.
Same here m8
Thank you Mike!, for all this courses and helping the people to improve in life, this is not a lot but one day I will make sure to help more people like you.
Thats good of you
wallahi real one
wholesome!
@@adhamelmahi4759 riit blhi kesa7
@@bessioudyassine8757 tounsi?
I enrolled at university last year for bachelors in computer systems engineering so it obviously involves a lot of coding. I have never learned to code before and thanks to my lecturer in the first year, he completely ruined coding for me, by dodging all the basics🤬 Here I am in my second year, trying to make the impossible happen and learn C within 2 days so that I can submit an assignment that is solely based on it. Your tutorials are extremely helpful and I can finally hope to create a functional code. Thank you, I'm legit in tears 😭 Never understood C before or coding for that matter 😫
Where is your university based?
You good now??
He offed himself 4 days after the post, he failed the exam and the whole university is talking about him
@@leno7492 You mean he/she committed the big die? Why didn't he/she ask the professor to help him/her?
@@racistlmao745 im not sure why he did it but he was in my computer science class and im pretty sure he had no friends
dude mike knows every coding language Jesus
He has probably watched all of his own tutorials.
I would know, I'm pretty smart I think.
Stop blasphemy
@@h.l.69 do you use discord light theme?
I'm taking CS50 online fro Harvard and your video really helped clear things up, THANK YOU!
Same. Just started pset1 and I'm having troubles just doing "Hello" . I feel like a faliure
Programmers are the best type of people in the world, realistic, logic, no bias, focusing, problem oriented
Wooow because of this comment I will start my journey in programming as from today
I had this video playing at 2 times speed and you have taught me more in 1 hour 53 minutes than my professor has taught me all semester! Thanksss!!!
Same the double speed hack
Same .....😅😅
how do u do that?
KNT Media Thanks for the idea. It was weird at first but it forced me to learn to pay attention better.
@@victoriaandrea3168by changing playback speed this is a good idea I'm gonna try it
Quick note with the if statements part, if you want to optimise your code as much as possible I suggest you learn logic true/false tables. It will avoid the double up that occurs from some of these examples.
For instance the function for finding the max of 3 numbers could be simplified to the following.
int max(int num1, int num2, int num3){
if(num1 >= num2 && num1 >= num3){
return num1;
} else if(num2 >= num3){
return num2;
}
return num3
}
This not only saves a few lines, it uses less variables, uses 1 less else statement and the second if statement is a much simpler computational task.
Not really a big deal until your messing with imbedded hardware like arduinos, but still useful and good practice to try to make code run as quick as possible.
Here's a note if anyone is reading this and wants to know of better ways to do things with loops:
I think there's a better way for scalability reasons. First, I'd change my function so it accepted both an integer array and an integer called "length". I'd set max to be the first element, then I'd iterate through all the array elements and compare them to max. If a number is larger than max, set max to the new number. I'd loop until my index was equal to "length".
If C arrays had a built-in length property, I'd remove the length parameter and just check if the index is less than Array.Length ;)
@@eatmoregames5026 That's even better still!
This what programmers call as an optimisation isn’t? This fewer lines of code will save lot of CPU and memory resource thus making the programme execute faster on the same hardware.
I think the following would be even faster, as long as the compiler doesn't translate your function to this:
int fastmax(int a, int b, int c) {
return (a > b) * (a > c) * a + (b > a) * (b > c) * b + (c > a) * (c > b) * c;
}
It takes the result (0 or 1) of the comparisons and multiplies them with each other and the actual number.
a = 1, b=2, c=3 will thus result in:
(1 > 2) * (1 > 3) * 1 + (2 > 1) * (2 > 3) * 2 + (3 > 1) * (3 > 2) * 3
or
0 * 0 * 1 + 1 * 0 * 2 + 1 * 1 * 3
Eliminating branches speeds up calculations, because your CPU can already load the following operations, because they will always be the same and not depend on whether the if-block or the else-block is going to be executed.
Someone give this guy a medal for his amazing service to us noobs at c
well, its C not C++, although they are similar
You learned C++ from a C video. You're the one who deserve a medal then😌
@@dawitbezabih6247 lmao
😭
done edited
Started on 08-09-2022 and finished on 10-09-2022. This was my first class on programming. Thankyou Mike.
great content! I appreciate how you've explained everything from scratch, that too in such a clear and precise manner. 3 hours down (took 6 to get here), and I'm still with you! your narration style is perfect, keeps you calm AND engaged. thank you!
"People overcomplicate pointers, they don't have to be complicated"
Next recomended video: "Pointers in C/C++" with 3 hours and 47 minutes of duration
man this toturial is on point. simple and great
The thunhnail scares me
For those who cannot run the code in the section "working with numbers", you also need to put "#include " to include the math library in order for it to be defined and run without error.
I didn't have that issue and I never imported the library. Is it not implied?
@@P4eZ1 im not sure too, but I am using vscode and online repl. They need the import to work, at least for me.
@@P4eZ1 Some functions may not require it, but it's best if I'm using stuff like sqrt() or pow()
I think code:blocks might be generous with importing libraries, I'm on linux using notepadqq and I had to manually import as well.
thank you brother !
bro I read the comments and surprised to see that alot of people came to this video while they were asleep
2:29:10 - Jim's a business major and Pam's an art major. Guess someone's a big "The Office" fan xD
EDIT - 3:38:43 - haha guess I was right
Haha you should see his SQL Tutorial video - it's the entire "The Office" lore explained with SQL
@@GY9944 lmao
I major in electrical engineering.and I have an internship that is required C programming next week,tho.This is a life saver.Thanks a bunch.
Thank you! I really wish I had started here when learning C - I have tried so many courses and materials to learn C and this finally made everything stick/filled in the gaps. I know some people are commenting about all the times you mentioned that "A pointer is just a memory address, that's all" but I (and I'm sure others) have gotten so many complicated explanations about pointers that it's really helpful to hear multiple times.
This guy made me start and love programming.
He taught me html and css.He is a LEGEND AND MAY Allah continue to bless you
this dude dont even say thank u for watching and subscribe at the end, what a legend.
Thanks ma man
Just wanted to say THANK YOU!!! I have learned more in this 4 hour course then I have the entire 5 weeks class I just did.
I'm a graduate and through out this pandemic , I developed an interest in programming as i never understood programming . During my 4 years of engineering our professor couldn't make us interested in this subject. Your approach is very friendly , keep up the good work.
Hi!
What field did you graduate in?
And how come you didn't "learn" programming, like how would you pass a programming course that way lol... Anyways this video was frigging awesome to learn from!
@@nilsodor Hi, My stream was Electronics's & communication , I somehow managed to pass 😏.
@@Pranavryan oh ok, thanks! I haven't started my program just yet but I'm a bit baffled to how many with actual software graduates, still seem uncertain about the basics... I'm just gonna sit here for 5 years and grind different concepts, I would expect to learn at least something impressive lol.
@@nilsodor Everyone looks to complete the course and jump on to practice but nobody deep dive into the concepts. Cheers 👍🏼
How are you doing now? I'm also trying to start in software engineering
this guy did in less than 4 hours what my professors couldn't do in entire semesters, made an effective and easily digestible lesson. I like that the sections and the examples in them were concise but still included thoroug explanations whenever there was something unfamiliar on the screen.
a big misstep that a lot of professors do is either assume you already know certain things, or don't care whether you do or don't, and then they sprinkle in these seemingly random ideas you've never seen before with what they're trying to teach you and don't actually bother to explain them.
this man did a fantastic job communicating these concepts, thank you very much for offering your teachings, good sir!
winton overwat
@@ow_lando Winton approves
Just finished this amazing course! Since I had previous experience with python, I was familiar with most of the concepts in this video, and this made me pretty confident in coding in C. And the fact that it is 100% free really amazes me. Great content out there!
Can u please suggest python best channel
@@shyamgandi9450 this same channel
Some say that learn python after learning c#.. are you sure.. can I learn python first?
@@Telugu_vaadini python is usually the first language people learn
@@Telugu_vaadini Yeah, Python is less complicated than this.
I just finished watching the entire tutorial. It's very helpful and Mike explains the content very well. I've definitely learned a lot and would highly recommend this to others if you haven't watched this already.
A programmer was going out and his wife to him "While you are outside, please buy some milk". The programmer never came back.
this actually made me laugh and now i feel like a nerd haahahah
@@mixagames5425 same
Didn't get it? Can someone explain it to me? I'm a civil Engineer wanting to switch to IT, so it'll be nice if someone clears this up, coz this looks kind of a technical pun
@@cosmiclyrics2307 The while loop repeats a certain code inside it while the statement provided is true. In this case while you're outside, which will be true forever because once the men goes outside there's nothing to evaluate that statement to false. So he will just continue buying milk in a loop. Hope that clears it up.
@@mixagames5425 ohhhh now that you mentioned it, its looking so obvious! Thanks for the explanation 👍. Gotta keep working on my skills
If you've just started learning C programming, congratulations on taking the first step! C is a powerful and widely-used programming language, and mastering it can open up many opportunities. Here are some tips to help you along your learning journey:
1. Understand the Basics: Begin by grasping the fundamental concepts of C programming, such as variables, data types, operators, control structures (if-else, loops), and functions. Build a strong foundation in these core concepts before moving on to more advanced topics.
2. Practice, Practice, Practice: The key to becoming proficient in programming is to write code regularly. Solve coding problems, work on small projects, and experiment with different concepts. The more you practice, the better you'll understand the language.
3. Break Down Problems: When faced with a programming challenge, break it down into smaller, manageable parts. Solve each part step by step, testing and debugging as you go. This approach will make complex problems more approachable.
4. Read and Analyze Code: Study well-written C code to understand how experienced programmers structure their programs, use libraries, and implement algorithms. Reading and analyzing code will improve your understanding and expose you to different coding styles.
5. Use a Good IDE: Choose a reliable Integrated Development Environment (IDE) that provides features like code highlighting, auto-completion, and debugging tools. Popular options for C programming include Code::Blocks, Dev-C++, and Visual Studio Code with C/C++ extensions.
6. Understand Memory Management: C gives you manual control over memory management. Learn about concepts like stack and heap memory, pointers, and memory allocation functions like malloc() and free(). Proper memory management is crucial to avoid memory leaks and unexpected behavior.
7. Debugging Skills: Debugging is an essential skill in programming. Learn how to use a debugger to step through your code, set breakpoints, and examine variables. Understanding the debugging process will help you identify and fix issues more efficiently.
8. Join a Community: Engage with fellow C programmers by joining online forums, coding communities, or local meetups. Interacting with others who are learning or already proficient in C can provide valuable insights, code reviews, and support.
9. Read Documentation: Make it a habit to read the official C documentation, like the C standard library functions and language specifications. Understanding the available functions and their usage will help you write more efficient and robust code.
10. Keep Learning: Programming languages and technologies evolve over time. Stay up to date with the latest C programming trends, new features, and best practices. Explore additional resources like books, online tutorials, and video courses to enhance your knowledge.
Remember, learning programming takes time and effort. Don't get discouraged by challenges or mistakes. Embrace them as opportunities to learn and improve. With dedication and consistent practice, you'll become a skilled C programmer. Good luck!
This sounds exactly like ChatGPT lol, although these are good tips so I'm not complaining.
I have learned python from you, and now I'm about to learn C from you. Thank you for teaching me these wonderful programming languages.
Same
This is almost 3 months of my first c course in college. Very usefull, glad I could remember it in a very simple way.
I passed my exam with your help
yoo bro really sent a tip lol
Bro sent 2 cents
Bro actually sent 2 pounds
Idk if y'all joking but it's 2 euros
He actually just tipped 2 pesos
Here's my progress:
Day 1: 00:00 to 45:23
Day 2: 45:23 to 1:12:06
Day 3: 1:12:06 to 1:17:43 (I had some other stuff to do so only did one part lol)
Day 4: 1:17:43 to 1:45:35 (calling the functions does not work on my IDE, its devc++, idk if its because the version is new or if the IDE is different, either way, im having funn, i know im going slow tho)
Day 5: 1:45:35 to 1:58:12 (so i can call functions now but i dont understand the concept of calling it and i dont get parameters either so thats awesome)
Day 6: 1:58:12 to 2:07:09 ( i understand calling and parameters now yayy amd if statements are sm fun omg)
Day 7: 2:07:09 to 2:29:43 (I've learnt alot at school too but structs are new )
Edit: I'm kinda busy but we're learning to code in C at school but I'll continue soon.
So you quit
@@dabhinikhil7315 huh? No lol, im doing my day 3 today
@@spidey2049 why u quit
50:37 I had to include to get the power function to work
1:41:05 I had to move the sayHi function before my main to make it work
I’m still not sure how pow() or sqrt() worked without him including the math library
thankyou the sayHi part was bothering me as to why it was still considered "undefined"
@@karatepants2959 I think he included a forward reference somewhere and forgot to mention it
You need to atleast declare a function called in main before main (or inside main). The definition may still be placed later.
Thank you so much. sayHi was bothering me too. it works in code blocks but not works in VSCode etc.
You are amazing for making this video. My programming class got put online randomly and my teacher does not actually teach anything. He just has a 600 page powerpoint instead. You are so much more helpful.
Btw I love you ❤️😍
@@mahesh1124kingo go touch some grass
1:29:20 Only LOST Fans will get it! Dude you rock!!! I have never seen a programmer with such a confident, relaxed and smart attitude! Thank you for making all these tutorials!
i am actually a data science student. it was because of you that i fell in love with python. now that i am learning C i came back to watch once again your tutorial. keep going bro. you're the best so far. hope you'll read my comment.
hi! i am exactly in the same situation as you. did you find another good video like this one to learn C? thanks
You explained my ENTIRE C course in 1 video. Why do I even attend colleg elol
I don't know either! My mid sem is in 1 week. This one video was enough
the honest answer of attending college?
Networking
*shudders in introverted aspie horror*
I'm actually learning this in the hopes of landing a future job without going into debt! Probably not with C though, I like to understand how things work to better use them, I figure learning C is about the equivalent of that.
lol he explained about 1 week of my assembly and computer structure class
lmao im asking myself this question every single day
This is truly a great channel man. He can actually keep ads and make some money but he didn't. He is really a great teacher. Thank you sir.
I love you so much bro, you are my savior! I spend the whole morning learning C++ from you with just experience from using Lua. I took the C++ placement test this afternoon and got a 70.45% (70% to skip the fundamental class 1336). I get to skip a 4-hour semester class with just 4 hours from you man.
@@mschecter0078 lol
i just watched this before my exam and its 2 am rn, having exam at 11am this same day and i can say this is very helpfull for just one time listening. actually insane and i love you guys. keep up the work im gonna come back here. got yourself a new sub
Hey, Wooow such an amazing teacher, he teaches C language so scientifically, that it's actually relaxing and confidence boosting to learn from his course.
This guy is brilliant. He makes me believe that I'm literally capable of learning programming language LOL
@x XGeneric420X x Thanks!!
That is just a syntax, anyone is capable of understanding it, even the greatest of dimwits. There is much more depth to actually using this knowledge to solve the problems and program
@@tomelex1838 yes, to build massive program, a lot of logical and analytical thinking is required
Huh jhbn
u are
I want to show my appreciation and respect to the instructor and all the organizing team to let this awesome tutorial to be able to put on TH-cam.
I had a great time learning this language, and it really did help me a lot!
Thanks again for this awesome journey!!
Love from Taiwan.
I just finished this full tutorial. This is my first programming language that I learnt. Thank you so much for such detail oriented work. Really appreciate it. ☺
HEY THIS VIDEO INCLUDE ARTHMETIC OPERATORS?
Even I just know a little English, but I still get your lesson in a clear way! Thanks a lot for your English accent particularly and your knowledge in general!
This dude has taught me more stuff in 3 hours than my prof in 3 years
im going to kill myslef
@@anorakquest4004 oh
@Corey Hamilton I hate you
same
please if you are joking about killing urselves it's not funny but if you are serious both of you pleaaaase don't
i promise it gets better, no matter how hard it is now.
I can't believe I spent 30$ on a course in udemy when this video is so much better
stop being stingy!
@@staffordnelson9053 stop being so sad ur mom died
@@sdafsdaf4844 Yu need to apologize for callin my moms name on this...
לומדים מטעויות
@@thexzavier8283 my mother was murdered over land dispute.It's sad beyond any words can say.
C Programming Tutorial for Beginners
⌨ (0:00:00) Introduction
⌨ (0:01:22) Windows Setup
⌨ (0:05:02) Mac Setup
⌨ (0:09:04) Hello World
⌨ (0:12:51) Drawing a Shape
⌨ (0:20:56) Variables
⌨ (0:32:25) Data Types
⌨ (0:38:32) Printf
⌨ (0:45:22) Working With Numbers
⌨ (0:52:20) Comments
⌨ (0:56:00) Constants
⌨ (1:00:13) Getting User Input
⌨ (1:12:08) Building a Basic Calculator
⌨ (1:17:43) Building a Mad Libs Game
⌨ (1:26:29) Arrays
⌨ (1:36:44) Functions
⌨ (1:45:37) Return Statement
⌨ (1:53:21) If Statements
⌨ (2:07:11) Building a Better Calculator
⌨ (2:14:51) Switch Statements
⌨ (2:21:27) Structs
⌨ (2:29:43) While Loops
⌨ (2:37:48) Building a Guessing Game
⌨ (2:50:11) For Loops
⌨ (2:59:05) 2D Arrays & Nested Loops
⌨ (3:09:10) Memory Addresses
⌨ (3:17:20) Pointers
⌨ (3:27:41) Dereferencing Pointers
⌨ (3:32:37) Writing Files
⌨ (3:41:52) Reading Files
Thanks for this free course, I am begining with C and the truth is that I have been having problems with the algoritms. The course has been very interesting and very useful. Thanks for all.
Me: trying to watch this video.
youtube recommended: not everyone should code.
PolyMatter, right?
Next video: Please, stop coding!
@@Dhruv-qw7jf yes, i am taking offence right now
Omg lol. This just happend to me right now. xD
Literally the first one
⭐️ Course Contents ⭐️
⌨️ (0:00:00) Introduction
⌨️ (0:01:22) Windows Setup
⌨️ (0:05:02) Mac Setup
⌨️ (0:09:04) Hello World
⌨️ (0:12:51) Drawing a Shape
⌨️ (0:20:56) Variables
⌨️ (0:32:25) Data Types
⌨️ (0:38:32) Printf
⌨️ (0:45:22) Working With Numbers
⌨️ (0:52:20) Comments
⌨️ (0:56:00) Constants
⌨️ (1:00:13) Getting User Input
⌨️ (1:12:08) Building a Basic Calculator
⌨️ (1:17:43) Building a Mad Libs Game
⌨️ (1:26:29) Arrays
⌨️ (1:36:44) Functions
⌨️ (1:45:37) Return Statement
⌨️ (1:53:21) If Statements
⌨️ (2:07:11) Building a Better Calculator
⌨️ (2:14:51) Switch Statements
⌨️ (2:21:27) Structs
⌨️ (2:29:43) While Loops
⌨️ (2:37:48) Building a Guessing Game
⌨️ (2:50:11) For Loops
⌨️ (2:59:05) 2D Arrays & Nested Loops
⌨️ (3:09:10) Memory Addresses
⌨️ (3:17:20) Pointers
⌨️ (3:27:41) Dereferencing Pointers
⌨️ (3:32:37) Writing Files
⌨️ (3:41:52) Reading Files
hey, we should put it to the top!
Copy paste from description
More than a year ago, I learnt HTML from this guy and I'm still doing it but now I'm moving to embedded systems engineering and I'm here via a recommendation, wish me luck
Great tutorial ! if you have learned some another language before, just watch at 1.5x speed ! epic!
nice idea thnx
@@pradyumankannan6802 Most useful comment :D Thanks :D
1x is fine with me, thanks.
agreed...watching at 1.5x is ideal. 2x is comic...1x and 1.25x too slow if C is not your first language
2x speed worked for me, and I've never written any of my own code in my life...
Thanks Dude! This video is really getting me into C basics, as a complete begginer and starting to study Computer Science you helped me a lot! Still half a video to watch and at this point I feel that I'v learned so much! My journey beggins here. You were part of it, thank you.
here to learn everything our professor failed to teach us :p
what,no,i like this course
@Kley christ
@Kley Same... ;-;
im on my first semester of computer science science we have a subject called c programming do you think i will succeed by learning from this vid ??
@@saadfathallah5043 Well you will grab majority of the concepts you require, its definitely worth while watching. However, you would have to be creative, you should be able to use everything taught in the video and understand what each thing is doing. Because with university/college, you would be given something to do, and it would require you to use many different kinds of the coding taught in C, to be able to create the program they asked for. So memorising how the code goes about wouldn't help at all. Don't memorise, understand what you’re exactly doing, is what im saying in summary.
I fell asleep to this randomly and it wasn't bad, your voice was great background noise
Hey man! Thanks for taking the time to put this together! I am stuck in quarantine without a job atm and decided now might be a good time to learn coding like I have thought for a while, I studied a bit of C# in high-school, but it was a while ago now and this was a very good starter video explaining the basics. :)
how's it going? how far did you make it?
How's going did u get any job
char praise[ ] = "the best";
printf("This channel is %s", praise);
instead of just
printf("This channel is the best");
@@zandovic it makes it cooler :D
@@zandovic Where is the fun in that?
Inefficient. This is unacceptable.
putchar('
');
Big thanks for producing such a massive lesson AND subtitling it during almost 4 hours !
The subtitles are generated automatically by an internal program bud. It's a youtube feature; the content creator has nothing to do with it.
@@johnschmid2436 Author subtitled 3 languages by himself. Check it one more time
They're auto-generated using a different service, although not TH-cam's. I have a lot of experience with captioning.
Some people passed their exams with this, I passed the night with this. Good morning TH-cam algorithm
I have been stuck on Week 2 of CS50x longer than I'd like to say and using this course for supplementary understanding has help me gain SO MUCH clarity on the topic. Better than the Harvard class if you ask me by far! Thank you!
Your way of explaining and teaching is awesome. Some one with virtually no programming experience like me can learn programming. Thank you for your efforts.
Me after 4 hours: "Remember : the pointer is just a memory address."
lol
this is like the coder version of emia means presence in blood
@@hangingjontron818 chubbyemu?
@@hhhyyy4375 very *yES*
I just studied that this morning
Gosh this guy's amazing, like he gives the little pertinent details, i'm amazed. this really helped. keep up with this. you deserve the best for saving a lot of people, especially students
Best tutorial EVER.... The tutorial is AWESOME, this guy is an awesome teacher....... no words.
This video is very useful, thank you for helping me refresh my memory.
I noticed in the For Loop, you don't need the 'int i = 1' before the For Loop, you can use 'for (int i = 0; i < 6; i++)', which allows for one less line.
i suggest one more channel. mind your processor. try it
Coming from a c#/js background here and it's interesting how familiar everything is! Like there are some "quirks" but otherwise it's all very familiar, more than I thought given the age differences. Switch statement seems to be identical. Struct seems to be a model but probably only superficially.
Wow, this video basically teaches an entire semester length, beginner level course in only a few hours. Immensely helpful, thanks.
Yes
Such systematically crafted and designed course. Thank You so much Sir, you explained everything so flawlessly, now I am feeling confident of scoring full marks in my college exam.
your video is the best C tutorial i can find on TH-cam. Thank you so much
I remember Mike starting these tutorials 2 years ago. I was lying in bed listening to this today and i was like " who is this guy?" Everything seemed to flow so naturally and conversationally. This is a masterpiece of teaching that only 1-in-a-thousand teachers will ever achieve. If he was a University level teacher, his work would be sought out and legend. Unbelievable.