برنامه نویسی C گام به گام - آموزش کامل برای مبتدیان

C Programming Step by Step - Complete Tutorial For Beginners

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: آموزش زبان C از اصول اولیه با عملگر C، حلقه، آرایه، اشاره گر، تابع، پارامتر، رشته، بازگشت، ساختار، فایل. عبارات if else، حلقه - while، for و do while با مثال های فراوان حلقه بزنید. آرایه - 1D و 2D، چرا به آنها نیاز داریم و چگونه از آنها به طور موثر استفاده کنیم. رشته در C - آرایه های کاراکتری خاتمه یافته NULL. تابع نوشتن، انتقال پارامتر به تابع. برگرداندن مقدار از تابع. کلاس ذخیره سازی - خودکار، استاتیک، خارجی و ثبت اشاره گر - درک عمیق. رابطه بین آرایه ها و اشاره گرها آرایه ای از اشاره گرها آرگومان های خط فرمان خواندن و نوشتن با فایل ها، متنی و باینری. بازگشت - نحوه کارکرد، بازگشت در مقابل تکرار در بحث عمیق - برج های هانوی ابزارهای رشته های مختلف - sprintf، strtok و بسیاری دیگر نشانگرهای تابع عملگرهای بیتی در برنامه نویسی C. پیش نیازها: بدون پیش نیاز، دوره برای مبتدیان مطلق است.

من به مدت 15 سال گذشته در کلاس درس به دانشجویان کارشناسی مهندسی این درس را آموزش داده ام. این دوره به خوبی طراحی شده است و تقریباً تمام موضوعاتی را که فرد باید در حین یادگیری زبان C بداند، پوشش می دهد. نه تنها به دانش آموز کمک می کند تا پایه ای محکم در مورد موضوع ایجاد کند، بلکه اعتماد به نفس او را برای مواجهه جسورانه با مصاحبه های فنی تقویت می کند.

محتوای دوره بیشتر سخنرانی های ویدئویی است. من مبتدیان مطلق را تشویق می‌کنم که سخنرانی‌ها را دقیقاً به شیوه‌های زمانی دنبال کنند، لطفاً از همان ویدیوی اول شروع کنید و فقط در صورتی که با ویدیوی قبلی تمام شده‌اید به ویدیوی بعدی بروید. با این حال، اگرچه توصیه نمی‌شود، اما دانش‌آموزان با دانش قبلی می‌توانند در صورت اعتماد به نفس، سخنرانی‌ها را انجام دهند.

این دوره اساساً برای برنامه نویسان جدیدی طراحی شده است که ممکن است تجربه قبلی با هیچ زبان برنامه نویسی نداشته باشند. از موضوعات بسیار ابتدایی تا پیشرفته. برنامه ساده تا پیچیده به صورت گام به گام.

برای ایجاد حرفه ای به عنوان برنامه نویس باید این دوره را طی کرد. برنامه نویسی به زبان C به عنوان پایه ای برای هر زبان برنامه نویسی در نظر گرفته شده است. اگر کسی به C اطمینان دارد، می‌تواند شروع به یادگیری هر زبان دیگری مانند PHP، C++ یا جاوا کند.


سرفصل ها و درس ها

معرفی و راهنمایی جهت پیگیری دوره. Introduction and guidance to follow the course.

  • معرفی Introduction

  • نکته ای در مورد وضوح صفحه نمایش A note on screen resolution.

  • نکته ای در مورد وضوح صفحه نمایش A note on screen resolution.

  • داشبورد دوره، بخش پرسش و پاسخ، راهنمایی اولیه برای پیگیری دوره. Course dash-board, Q/A section, basic guidance to follow the course.

  • داشبورد دوره، بخش پرسش و پاسخ، راهنمایی اولیه برای پیگیری دوره. Course dash-board, Q/A section, basic guidance to follow the course.

  • نحوه انجام تمرینات کد نویسی لطفا تماشا کنید. How to do the coding exercises, please watch.

  • نحوه انجام تمرینات کد نویسی لطفا تماشا کنید. How to do the coding exercises, please watch.

معرفی و راهنمایی جهت پیگیری دوره. Introduction and guidance to follow the course.

  • معرفی Introduction

نحوه دانلود، نصب و استفاده از کامپایلرها و IDE های مختلف برای برنامه نویسی C. How to download, install and use compilers and various IDEs for C programming.

  • یادداشتی کوتاه در مورد IDE و کامپایلر A brief note on IDE and Compiler

  • یادداشتی کوتاه در مورد IDE و کامپایلر A brief note on IDE and Compiler

  • دانلود نصب و استفاده از Xcode (در OSX) برای نوشتن برنامه های C Download install and use Xcode(on OSX) for writing C programs

  • دانلود نصب و استفاده از Xcode (در OSX) برای نوشتن برنامه های C Download install and use Xcode(on OSX) for writing C programs

  • با استفاده از ترمینال مک کامپایل کنید و برنامه را روی متن عالی بنویسید. Compile using Mac terminal and write program on sublime text.

  • استفاده از کد ویژوال استودیو در برنامه MacOS for C. Using Visual Studio Code on MacOS for C program.

  • نحوه دانلود و نصب Codeblocks برای مک How to download and install Codeblocks for Mac

  • دانلود Install and Use Code::Blocks برای برنامه های C خود. Download Install and Use Code::Blocks for your C programs.

  • دانلود Install and Use Code::Blocks برای برنامه های C خود. Download Install and Use Code::Blocks for your C programs.

  • کامپایل از ترمینال ویندوز با استفاده از gcc Compiling from Windows terminal using gcc

  • کامپایل از ترمینال ویندوز با استفاده از gcc Compiling from Windows terminal using gcc

  • استفاده از کد ویژوال استودیو برای ویندوز Using Visual Studio Code for Windows.

  • استفاده از کد ویژوال استودیو برای ویندوز Using Visual Studio Code for Windows.

  • نسخه Community Microsoft Visual Studio 2019 را دانلود، نصب و استفاده کنید. Download, install and use Microsoft Visual Studio 2019 Community edition.

  • نسخه Community Microsoft Visual Studio 2019 را دانلود، نصب و استفاده کنید. Download, install and use Microsoft Visual Studio 2019 Community edition.

  • استفاده از Netbeans در مک Using Netbeans in Mac

نحوه دانلود، نصب و استفاده از کامپایلرها و IDE های مختلف برای برنامه نویسی C. How to download, install and use compilers and various IDEs for C programming.

  • با استفاده از ترمینال مک کامپایل کنید و برنامه را روی متن عالی بنویسید. Compile using Mac terminal and write program on sublime text.

  • استفاده از کد ویژوال استودیو در برنامه MacOS for C. Using Visual Studio Code on MacOS for C program.

  • نحوه دانلود و نصب Codeblocks برای مک How to download and install Codeblocks for Mac

  • استفاده از Netbeans در مک Using Netbeans in Mac

اصولی که همیشه باید بدانید Fundamentals that you always need to know

  • درک برنامه اول Understanding the first program.

  • درک برنامه اول Understanding the first program.

  • فقط سلام جهان را چاپ کنید Just print Hello World

  • فقط سلام جهان را چاپ کنید Just print Hello World

  • متغیرها و انواع داده ها در برنامه نویسی C. Variables and data types in C programming.

  • متغیرها و انواع داده ها در برنامه نویسی C. Variables and data types in C programming.

  • چاپ محتوای متغیر با استفاده از printf Printing content of variable using printf

  • چاپ محتوای متغیر با استفاده از printf Printing content of variable using printf

  • خواندن داده ها از صفحه کلید به متغیر با استفاده از scanf. Reading data from keyboard into variable using scanf.

  • آیا printf و scanf را فهمیده اید؟ Have you understood printf and scanf?

  • مقدار دهی اولیه مقدار دهی اولیه متغیر، اکتال و هگزادسیمال. Initialization of variable, octal and hexadecimal initialization.

  • عملگرهای حسابی در C Arithmetical Operators in C

  • عملگرهای حسابی در C Arithmetical Operators in C

  • کمی کار حسابی انجام دهید Do some arithmetic work

  • کمی کار حسابی انجام دهید Do some arithmetic work

  • I/O کنسول و اعلامیه های متغیر Console I/O and Variable declarations

  • I/O کنسول و اعلامیه های متغیر Console I/O and Variable declarations

  • برخورد با شخصیت ها Dealing with characters

  • برخورد با شخصیت ها Dealing with characters

  • شخصیت ها - آیا آنها را می شناسید؟ Characters - Do you know them?

  • شخصیت ها - آیا آنها را می شناسید؟ Characters - Do you know them?

  • مشکل فلاشینگ هنگام گرفتن ورودی کاراکتر Flushing problem while taking character input

  • ایده ریخته گری Idea of casting

  • تکلیف برای آزمایش ایده شما در مورد ریخته گری نوع داده. Assignment to test your idea about data type casting.

  • تکلیف برای آزمایش ایده شما در مورد ریخته گری نوع داده. Assignment to test your idea about data type casting.

  • راز printf The secret of printf

  • راز printf The secret of printf

  • راز اسکنف The secret of scanf

  • نادیده گرفته ترین اپراتور - اپراتور تخصیص The most neglected operator - Assignment operator

  • نادیده گرفته ترین اپراتور - اپراتور تخصیص The most neglected operator - Assignment operator

  • عملگرهای رابطه ای برای مقایسه مقادیر Relational operators for comparing values

  • عملگرهای رابطه ای برای مقایسه مقادیر Relational operators for comparing values

  • آیا می توانید این چالش را قبول کنید؟ Can you take this challenge?

  • مقدمه ای بر عملگر منطقی و عملیات Introduction to Logical Operator, AND operation

  • عملیات منطقی OR Logical OR operation

  • عملیات منطقی OR Logical OR operation

  • عملیات منطقی NOT Logical NOT operation

  • عملیات منطقی NOT Logical NOT operation

  • عملگر افزایش و کاهش یکنواختی Unary increment and decrement operator

  • ویژگی اتصال کوتاه عملکرد AND و OR Short circuit feature of AND and OR operation

  • پایه های شما چقدر ملموس است How concrete is your foundations

اصولی که همیشه باید بدانید Fundamentals that you always need to know

  • خواندن داده ها از صفحه کلید به متغیر با استفاده از scanf. Reading data from keyboard into variable using scanf.

  • آیا printf و scanf را فهمیده اید؟ Have you understood printf and scanf?

  • مقدار دهی اولیه مقدار دهی اولیه متغیر، اکتال و هگزادسیمال. Initialization of variable, octal and hexadecimal initialization.

  • مشکل فلاشینگ هنگام گرفتن ورودی کاراکتر Flushing problem while taking character input

  • ایده ریخته گری Idea of casting

  • راز اسکنف The secret of scanf

  • آیا می توانید این چالش را قبول کنید؟ Can you take this challenge?

  • مقدمه ای بر عملگر منطقی و عملیات Introduction to Logical Operator, AND operation

  • عملگر افزایش و کاهش یکنواختی Unary increment and decrement operator

  • ویژگی اتصال کوتاه عملکرد AND و OR Short circuit feature of AND and OR operation

  • پایه های شما چقدر ملموس است How concrete is your foundations

انشعاب، اقدام بر اساس نتیجه شرط Branching, taking course of action on the basis of result of condition

  • "بودن یا نبودن" - نحوه تصمیم گیری با استفاده از if-else "To be or not to be" - how to decide using if-else

  • ادامه، ساختار if-else-if Going further, the if-else-if structure

  • "Mood of Pupeta the funny creature" - مهارت خود را در if-else تست کنید "Mood of Pupeta the funny creature" - Test your skill on if-else

  • مثال برنامه نویسی دیگری در if-else-if، این به شما کمک بیشتری می کند. Another programming example on if-else-if, this will help you more.

  • یک مثال برنامه نویسی دیگر در if-else-if، این به شما کمک بیشتری می کند. Another programming example on if-else-if, this will help you more.

  • آیا مطمئن هستید که می توانید به این پاسخ دهید؟ نگاهی بیاندازید. Are you sure you can answer this? Take a look.

  • آیا مطمئن هستید که می توانید به این پاسخ دهید؟ نگاهی بیاندازید. Are you sure you can answer this? Take a look.

  • عملیات! هنوز انجام نشده است، در اینجا اطلاعات بیشتری در مورد if-else وجود دارد Ops! Not done yet, here is some more information on if-else

  • چاپ نظر با توجه به سن. Print remark according to the age.

  • با استفاده از عملگر شرطی، تنها عملگر سه تایی در C، آن را هوشمند کنید Make it smart using conditional operator, the only ternary operator in C

  • در غیر این صورت تو در تو، بررسی سال کبیسه. Nested if-else, checking leap year.

  • در غیر این صورت تو در تو، بررسی سال کبیسه. Nested if-else, checking leap year.

  • سوئیچ مورد را درک کنید Understand switch-case

  • سوئیچ مورد را درک کنید Understand switch-case

  • تصمیم گیری، چقدر جسور هستید؟ Decision making, how bold you are?

  • تصمیم گیری، چقدر جسور هستید؟ Decision making, how bold you are?

  • عبارت if-else را تمرین کنید Practice if-else statement

  • عبارت if-else را تمرین کنید Practice if-else statement

انشعاب، اقدام بر اساس نتیجه شرط Branching, taking course of action on the basis of result of condition

  • "بودن یا نبودن" - نحوه تصمیم گیری با استفاده از if-else "To be or not to be" - how to decide using if-else

  • ادامه، ساختار if-else-if Going further, the if-else-if structure

  • "Mood of Pupeta the funny creature" - مهارت خود را در if-else تست کنید "Mood of Pupeta the funny creature" - Test your skill on if-else

  • عملیات! هنوز انجام نشده است، در اینجا اطلاعات بیشتری در مورد if-else وجود دارد Ops! Not done yet, here is some more information on if-else

  • چاپ نظر با توجه به سن. Print remark according to the age.

  • با استفاده از عملگر شرطی، تنها عملگر سه تایی در C، آن را هوشمند کنید Make it smart using conditional operator, the only ternary operator in C

آن را بارها و بارها انجام دهید تا زمانی که راضی شوید، تکنیکی برای تکرار. Do it again and again until satisfied, technique for iteration.

  • مقدمه ای بر حلقه، while. Introduction to loop, while loop.

  • مقدمه ای بر حلقه، while. Introduction to loop, while loop.

  • امتحان در حلقه while Quiz on While loop

  • حلقه while - برنامه نویسی مثال 1 While loop - Programming Example 1

  • حلقه while - برنامه نویسی مثال 1 While loop - Programming Example 1

  • حلقه while - برنامه نویسی مثال 2 While loop - Programming Example 2

  • مجموع تمام اعدادی را که بر 3 بخش پذیرند اما بر 5 بخش پذیر نیستند تا عدد صحیح مثبت n پیدا کنید. Find sum of all numbers which are divisible by 3 but not divisible by 5 up to a positive integer n.

  • مجموع تمام اعدادی را که بر 3 بخش پذیرند اما بر 5 بخش پذیر نیستند تا عدد صحیح مثبت n پیدا کنید. Find sum of all numbers which are divisible by 3 but not divisible by 5 up to a positive integer n.

  • یک چالش در حلقه while انجام دهید، در اینجا جالب است "پیش بینی خروجی" در while. Take a challenge on while loop, here is interesting "predict output" on while.

  • تکلیف: حلقه while - 1 Assignment: While loop - 1

  • همه چیز درباره حلقه به دنبال هوشمند All about smart looking for loop

  • چاپ الگو Pattern Printing

  • ابتدا انجام دهید سپس بررسی کنید، حلقه do-while First do then check, do-while loop

  • نحوه شکستن یک حلقه زودهنگام: استفاده از کلمه کلیدی "شکستن". How to break a loop early: use of 'break' keyword

  • ابزار حلقه دیگر: کلمه کلیدی 'ادامه' The other loop utility: 'continue' keyword

  • ابزار حلقه دیگر: کلمه کلیدی 'ادامه' The other loop utility: 'continue' keyword

  • تولید اعداد تصادفی، تابع rand(). Generating random numbers, the rand() function

  • امتحان 3. بررسی کنید که چگونه می توانید تکرار کنید. Quiz 3. Check how you can iterate.

  • سلام_لو_بازی Hi_Lo_Game

  • بازی تاس A dice game

  • بازی تاس A dice game

آن را بارها و بارها انجام دهید تا زمانی که راضی شوید، تکنیکی برای تکرار. Do it again and again until satisfied, technique for iteration.

  • امتحان در حلقه while Quiz on While loop

  • حلقه while - برنامه نویسی مثال 2 While loop - Programming Example 2

  • یک چالش در حلقه while انجام دهید، در اینجا جالب است "پیش بینی خروجی" در while. Take a challenge on while loop, here is interesting "predict output" on while.

  • تکلیف: حلقه while - 1 Assignment: While loop - 1

  • همه چیز درباره حلقه به دنبال هوشمند All about smart looking for loop

  • چاپ الگو Pattern Printing

  • ابتدا انجام دهید سپس بررسی کنید، حلقه do-while First do then check, do-while loop

  • نحوه شکستن یک حلقه زودهنگام: استفاده از کلمه کلیدی "شکستن". How to break a loop early: use of 'break' keyword

  • تولید اعداد تصادفی، تابع rand(). Generating random numbers, the rand() function

  • امتحان 3. بررسی کنید که چگونه می توانید تکرار کنید. Quiz 3. Check how you can iterate.

  • سلام_لو_بازی Hi_Lo_Game

آرایه: مجموعه Array: the collection

  • مقدمه ای بر آرایه تک بعدی Introduction to one dimensional array

  • راه اندازی آرایه یک بعدی Initialisation of one dimensional array

  • تخصیص آرایه به صورت پویا، نمونه عملیات خروجی ورودی با آرایه Allocating array dynamically, Example input output operations with array

  • یک مثال برنامه نویسی با استفاده از آرایه 1 بعدی A programming example using 1-D array

  • آرایه یک بعدی - انتساب اول. One dimensional array - first assignment.

  • تخصیص دوم در آرایه یک بعدی Second assignment on one dimensional array

  • تخصیص دوم در آرایه یک بعدی Second assignment on one dimensional array

  • مقدمه ای بر آرایه دو بعدی Introduction to two dimensional array

  • مثال برنامه نویسی آرایه دو بعدی 2-D array programming example

  • جابجایی یک ماتریس را چاپ کنید. Print transpose of a matrix.

  • جابجایی یک ماتریس را چاپ کنید. Print transpose of a matrix.

  • میدان جادویی را ایجاد کنید Generate Magic Square

  • میدان جادویی را ایجاد کنید Generate Magic Square

  • آیا با آرایه های 1 بعدی راحت هستید؟ Are you comfortable with 1-D arrays?

  • آیا با آرایه های 1 بعدی راحت هستید؟ Are you comfortable with 1-D arrays?

  • درک خود را با آرایه های 2 بعدی آزمایش کنید. Test your understanding with 2 Dimensional arrays.

  • درک خود را با آرایه های 2 بعدی آزمایش کنید. Test your understanding with 2 Dimensional arrays.

آرایه: مجموعه Array: the collection

  • مقدمه ای بر آرایه تک بعدی Introduction to one dimensional array

  • راه اندازی آرایه یک بعدی Initialisation of one dimensional array

  • تخصیص آرایه به صورت پویا، نمونه عملیات خروجی ورودی با آرایه Allocating array dynamically, Example input output operations with array

  • یک مثال برنامه نویسی با استفاده از آرایه 1 بعدی A programming example using 1-D array

  • آرایه یک بعدی - انتساب اول. One dimensional array - first assignment.

  • مقدمه ای بر آرایه دو بعدی Introduction to two dimensional array

  • مثال برنامه نویسی آرایه دو بعدی 2-D array programming example

روش ذخیره و دستکاری رشته در برنامه نویسی C Way to store and manipulate string in C programming

  • مقدمه ای بر رشته، استفاده از آرایه کاراکتر برای ذخیره رشته Introduction to string, using character array for storing string

  • نحوه وارد کردن رشته از صفحه کلید How to input string from keyboard

  • پیدا کردن طول رشته Finding the length of string

  • جستجو و شمارش هدف در رشته Searching and counting target in string

  • جستجو و شمارش هدف در رشته Searching and counting target in string

  • تابع کتابخانه برای عملیات رشته، string.h Library function for string operations, string.h

  • تابع کتابخانه برای عملیات رشته، string.h Library function for string operations, string.h

  • طولانی ترین کلمه را در یک رشته پیدا کنید Find longest word in a string

  • بررسی کنید که آیا یک رشته پالیندروم است یا خیر. Check if a string is a Palindrome or not.

  • بررسی کنید که آیا یک رشته پالیندروم است یا خیر. Check if a string is a Palindrome or not.

  • تعداد دفعات ارقام در یک رشته count frequency of digits in a string.

  • آزمون روی رشته (آرایه کاراکتر خاتمه یافته NULL) Quiz on string (NULL terminated character array)

روش ذخیره و دستکاری رشته در برنامه نویسی C Way to store and manipulate string in C programming

  • مقدمه ای بر رشته، استفاده از آرایه کاراکتر برای ذخیره رشته Introduction to string, using character array for storing string

  • نحوه وارد کردن رشته از صفحه کلید How to input string from keyboard

  • پیدا کردن طول رشته Finding the length of string

  • طولانی ترین کلمه را در یک رشته پیدا کنید Find longest word in a string

  • تعداد دفعات ارقام در یک رشته count frequency of digits in a string.

  • آزمون روی رشته (آرایه کاراکتر خاتمه یافته NULL) Quiz on string (NULL terminated character array)

با استفاده از تابع برنامه خود را مدولار کنید. Modularise your program using function.

  • مقدمه ای بر عملکرد Introduction to function

  • مقدمه ای بر عملکرد Introduction to function

  • نمونه اولیه یا امضای تابع، اعلام یک تابع. Prototype or signature of function, declaring a function.

  • نمونه اولیه یا امضای تابع، اعلام یک تابع. Prototype or signature of function, declaring a function.

  • یک تابع ساده بنویسید Write a simple function.

  • یک تابع ساده بنویسید Write a simple function.

  • مسابقه مقدماتی عملکرد Quiz on Function preliminaries

  • کتابخانه خود را ایجاد کنید، توابع را برای دیگران توزیع کنید. Create your own library, distribute functions to others.

  • تابع مثال 1، تابعی برای بررسی عدد اول Function example 1, a function to check prime number

  • تابع مثال 1، تابعی برای بررسی عدد اول Function example 1, a function to check prime number

  • مثال بیشتر در مورد تابع More example on function

  • مثال دیگر، تابعی برای آزمایش عدد آرمسترانگ Another example, a function to test Armstrong Number

  • مثال دیگر، تابعی برای آزمایش عدد آرمسترانگ Another example, a function to test Armstrong Number

  • برای بررسی یک کاراکتر یک تابع بنویسید. Write a function to to check a character.

  • برای بررسی یک کاراکتر یک تابع بنویسید. Write a function to to check a character.

  • یک تابع برای پیدا کردن مساحت یک مستطیل ایجاد کنید. Develop a function to find the area of a rectangle.

  • مجموع تمام اعداد اول تا n را پیدا کنید. Find sum of all prime numbers upto n.

  • امتحان در مورد عملکرد Quiz on function

  • امتحان در مورد عملکرد Quiz on function

با استفاده از تابع برنامه خود را مدولار کنید. Modularise your program using function.

  • مسابقه مقدماتی عملکرد Quiz on Function preliminaries

  • کتابخانه خود را ایجاد کنید، توابع را برای دیگران توزیع کنید. Create your own library, distribute functions to others.

  • مثال بیشتر در مورد تابع More example on function

  • یک تابع برای پیدا کردن مساحت یک مستطیل ایجاد کنید. Develop a function to find the area of a rectangle.

  • مجموع تمام اعداد اول تا n را پیدا کنید. Find sum of all prime numbers upto n.

بازی Rock-Paper-Scissor - یک رویکرد مدولارانه Rock-Paper-Scissor game - a modularise approach

  • بازی سنگ-کاغذ-قیچی - قسمت 1 Rock-Paper-Scissor game - Part 1

  • بازی سنگ-کاغذ-قیچی - قسمت 1 Rock-Paper-Scissor game - Part 1

  • بازی سنگ-کاغذ-قیچی - قسمت 2 Rock-Paper-Scissor game - Part 2

بازی Rock-Paper-Scissor - یک رویکرد مدولارانه Rock-Paper-Scissor game - a modularise approach

  • بازی سنگ-کاغذ-قیچی - قسمت 2 Rock-Paper-Scissor game - Part 2

بازگشت، نحوه نوشتن توابع بازگشتی. Recursion, how to write recursive functions.

  • مقدمه ای بر بازگشت. Introduction to recursion.

  • معرفی ادامه دارد... Introduction continues...

  • معرفی ادامه دارد... Introduction continues...

  • بازگشت در مقابل تکرار، بحث بزرگ، مفهوم بازگشت TAIL. Recursion vs Iteration, the big debate, Concept of TAIL recursion.

  • بازگشت در مقابل تکرار، بحث بزرگ، مفهوم بازگشت TAIL. Recursion vs Iteration, the big debate, Concept of TAIL recursion.

  • بحث ادامه دارد... دقیقا چه زمانی تکرار ارجح است. The debate continues... when exactly iteration is preferable.

  • هنوز در حال بحث است... وقتی بازگشت ارجح است. Still in debate... when recursion is preferable.

  • هنوز در حال بحث است... وقتی بازگشت ارجح است. Still in debate... when recursion is preferable.

  • برج هانوی، نمونه کلاسیک بازگشت. Tower of Hanoi, the classical example of recursion.

  • اجرای برج هانوی Implementation of Tower of Hanoi

  • اجرای برج هانوی Implementation of Tower of Hanoi

  • مثال دیگر، اصطلاح فیبوناچی. Another example, Fibonacci term.

  • دانش خود را در مورد بازگشت آزمایش کنید. Test your knowledge on recursion.

بازگشت، نحوه نوشتن توابع بازگشتی. Recursion, how to write recursive functions.

  • مقدمه ای بر بازگشت. Introduction to recursion.

  • بحث ادامه دارد... دقیقا چه زمانی تکرار ارجح است. The debate continues... when exactly iteration is preferable.

  • برج هانوی، نمونه کلاسیک بازگشت. Tower of Hanoi, the classical example of recursion.

  • مثال دیگر، اصطلاح فیبوناچی. Another example, Fibonacci term.

  • دانش خود را در مورد بازگشت آزمایش کنید. Test your knowledge on recursion.

کلاس ذخیره سازی، مفهوم مهم Storage class, important conception

  • مقدمه ای بر کلاس ذخیره سازی، کلاس ذخیره سازی خودکار Introduction to storage class, the auto storage class

  • کلاس ذخیره سازی: استاتیک Storage class: static

  • کلاس ذخیره سازی: خارجی Storage class: extern

  • کلاس ذخیره سازی: خارجی Storage class: extern

  • کلاس ذخیره سازی: ثبت نام کنید Storage class: register

  • کلاس ذخیره سازی: ثبت نام کنید Storage class: register

  • دانش خود را در مورد Storage Class بررسی کنید. Check your knowledge on Storage Class.

کلاس ذخیره سازی، مفهوم مهم Storage class, important conception

  • مقدمه ای بر کلاس ذخیره سازی، کلاس ذخیره سازی خودکار Introduction to storage class, the auto storage class

  • کلاس ذخیره سازی: استاتیک Storage class: static

  • دانش خود را در مورد Storage Class بررسی کنید. Check your knowledge on Storage Class.

اشاره گر، نیشگون گرفتن و کشیدن با مکان های حافظه. Pointers, tweak with memory locations.

  • مفهوم حافظه پشته و پشته Conception of stack and heap memory

  • مفهوم حافظه پشته و پشته Conception of stack and heap memory

  • مقدمه ای بر اشاره گرها Introduction to pointers

  • مقدمه ای بر اشاره گرها Introduction to pointers

  • مقدمه ای بر اشاره گرها، ادامه دارد... Introduction to pointers, continues...

  • مقدمه ای بر اشاره گرها، ادامه دارد... Introduction to pointers, continues...

  • آدرس حسابی Address arithmetic

  • آدرس حسابی Address arithmetic

  • بیشتر در مورد اشاره گرها More on pointers

  • امتحان در مورد اشاره گر - 1 Quiz on Pointers - 1

  • امتحان در مورد اشاره گر - 1 Quiz on Pointers - 1

  • نحوه و زمان استفاده از اشاره گر در برنامه C How and when to use pointers in C program

  • به روز رسانی مقادیر از تابع در محل اصلی. update values from function at the original location.

  • به روز رسانی مقادیر از تابع در محل اصلی. update values from function at the original location.

  • نمونه برنامه نویسی بیشتر More programming example

  • رابطه بین آرایه یک بعدی و اشاره گرها Relationship between one dimensional array and pointers

  • ارسال آرایه یک بعدی به عملکرد Passing one dimensional array to function

  • مثال بیشتر در مورد ارسال آرایه یک بعدی به تابع More example on passing one dimensional array to function

  • ارسال آرایه یک بعدی به عنوان پارامتر. Passing one dimensional array as parameter.

  • کلنی با 8 سلول - شبیه سازی. Colony with 8 cells - simulation.

  • یک مثال دیگر - ارسال یک رشته (آرایه های کاراکتر) برای عملکرد One more example - Passing a string (character arrays) to function

  • نوشتن توابع برای تبدیل تمام موارد یک رشته دریافت شده توسط تابع. Writing functions to convert all cases of a string received by the function.

  • استفاده از کلمه کلیدی const با اشاره گر use of const keyword with pointer

  • مقداری چسب دیگر اضافه کنید Add some more glue

  • اشاره گر عمومی نشانگر خالی است The generic pointer is void pointer

  • اشاره گر عمومی نشانگر خالی است The generic pointer is void pointer

  • تخصیص حافظه پویا - عملکرد malloc Dynamic memory allocation - malloc function

  • تخصیص حافظه پویا - عملکرد malloc Dynamic memory allocation - malloc function

  • تخصیص حافظه پویا - عملکرد calloc Dynamic memory allocation - calloc function

  • تخصیص حافظه پویا - تابع realloc Dynamic memory allocation - realloc function

  • خاصیت تغییرناپذیر لفظ رشته Immutable property of string literals

  • خاصیت تغییرناپذیر لفظ رشته Immutable property of string literals

  • آرایه اشاره گر - قسمت 1 Array of pointers - part 1

  • آرایه اشاره گر - قسمت 1 Array of pointers - part 1

  • آرایه اشاره گرها - قسمت 2 (شبیه سازی آرایه دو بعدی پویا با استفاده از آرایه اشاره گرها) Array of pointers-part 2(Simulation of dynamic 2D array using array of pointers)

اشاره گر، نیشگون گرفتن و کشیدن با مکان های حافظه. Pointers, tweak with memory locations.

  • مقدمه ای بر اشاره گرها، ادامه دارد... Introduction to pointers, continues...

  • مقدمه ای بر اشاره گرها، ادامه دارد... Introduction to pointers, continues...

  • بیشتر در مورد اشاره گرها More on pointers

  • نحوه و زمان استفاده از اشاره گر در برنامه C How and when to use pointers in C program

  • نمونه برنامه نویسی بیشتر More programming example

  • رابطه بین آرایه یک بعدی و اشاره گرها Relationship between one dimensional array and pointers

  • ارسال آرایه یک بعدی به عملکرد Passing one dimensional array to function

  • مثال بیشتر در مورد ارسال آرایه یک بعدی به تابع More example on passing one dimensional array to function

  • ارسال آرایه یک بعدی به عنوان پارامتر. Passing one dimensional array as parameter.

  • کلنی با 8 سلول - شبیه سازی. Colony with 8 cells - simulation.

  • یک مثال دیگر - ارسال یک رشته (آرایه های کاراکتر) برای عملکرد One more example - Passing a string (character arrays) to function

  • نوشتن توابع برای تبدیل تمام موارد یک رشته دریافت شده توسط تابع. Writing functions to convert all cases of a string received by the function.

  • استفاده از کلمه کلیدی const با اشاره گر use of const keyword with pointer

  • مقداری چسب دیگر اضافه کنید Add some more glue

  • تخصیص حافظه پویا - عملکرد calloc Dynamic memory allocation - calloc function

  • تخصیص حافظه پویا - تابع realloc Dynamic memory allocation - realloc function

  • آرایه اشاره گرها - قسمت 2 (شبیه سازی آرایه دو بعدی پویا با استفاده از آرایه اشاره گرها) Array of pointers-part 2(Simulation of dynamic 2D array using array of pointers)

نوع تعریف شده توسط کاربر در C - ساختار، اتحاد و enum User defined type in C - structure, union and enum

  • مقدمه ای بر نوع تعریف شده توسط کاربر، کلمه کلیدی ساختار Introduction to User Defined Type, struct keyword

  • مقدمه ای بر نوع تعریف شده توسط کاربر، کلمه کلیدی ساختار Introduction to User Defined Type, struct keyword

  • کلمه کلیدی typedef، ایجاد نام مستعار برای تایپ typedef keyword, creating alias to type

  • کلمه کلیدی typedef، ایجاد نام مستعار برای تایپ typedef keyword, creating alias to type

  • استفاده از ساختار 1 Using Structure 1

  • اشاره گر برای ساخت شی pointer to struct object

  • اشاره گر برای ساخت شی pointer to struct object

  • استفاده از ساختار 2 Using structure 2

  • رفتار نوشتن (توابع) برای انواع ساختار - قسمت 1 Writing behaviour (functions) for struct types - part1

  • رفتار نوشتن (توابع) برای انواع ساختار - قسمت 1 Writing behaviour (functions) for struct types - part1

  • رفتار نوشتن (توابع) برای انواع ساختار - قسمت 2 Writing behaviour (functions) for struct types - part2

  • استفاده از نوع ساختار در یک نوع ساختار دیگر Using struct type within another struct type

  • اعلان ثابت های شمارش شده، کلمه کلیدی enum declaring enumerated constants, enum keyword

  • فقط یکبار در گروه، از کلمه کلیدی enum استفاده کنید Only one at a time in group, use of enum keyword

نوع تعریف شده توسط کاربر در C - ساختار، اتحاد و enum User defined type in C - structure, union and enum

  • استفاده از ساختار 1 Using Structure 1

  • استفاده از ساختار 2 Using structure 2

  • رفتار نوشتن (توابع) برای انواع ساختار - قسمت 2 Writing behaviour (functions) for struct types - part2

  • استفاده از نوع ساختار در یک نوع ساختار دیگر Using struct type within another struct type

  • اعلان ثابت های شمارش شده، کلمه کلیدی enum declaring enumerated constants, enum keyword

  • فقط یکبار در گروه، از کلمه کلیدی enum استفاده کنید Only one at a time in group, use of enum keyword

توابع Variadic - نحوه ارسال آرگومان های متغیر به یک تابع Variadic Functions - how to pass variable arguments to a function

  • نحوه ارسال آرگومان های متغیر به تابع How to pass variable arguments to function.

  • ارسال آرگومان های متغیر از انواع مختلف Passing variable arguments of different types

  • ارسال آرگومان های متغیر از انواع مختلف Passing variable arguments of different types

توابع Variadic - نحوه ارسال آرگومان های متغیر به یک تابع Variadic Functions - how to pass variable arguments to a function

  • نحوه ارسال آرگومان های متغیر به تابع How to pass variable arguments to function.

عبور آرگومان خط فرمان Command line argument passing.

  • آرگومان های خط فرمان، پارامترهای متد اصلی Command line arguments, parameters to main method

  • آرگومان های خط فرمان، پارامترهای متد اصلی Command line arguments, parameters to main method

  • آرگومان های خط فرمان - مثال بیشتر Command line arguments - more example

  • آرگومان های خط فرمان - مثال بیشتر Command line arguments - more example

  • ارسال args خط cmd در Netbeans Passing cmd line args in Netbeans

  • ارسال args خط cmd در Netbeans Passing cmd line args in Netbeans

  • نحوه ارسال آرگومان های خط فرمان در کدبلاک ها How to pass command line arguments in Codeblocks

  • نحوه ارسال آرگومان های خط فرمان در کدبلاک ها How to pass command line arguments in Codeblocks

  • دریافت اطلاعات در مورد محیط زیست، پارامتر محیطی در اصل Get information about environment, the environmental parameter in main

  • دریافت اطلاعات در مورد محیط زیست، پارامتر محیطی در اصل Get information about environment, the environmental parameter in main

  • آزمون آرگومان های خط فرمان Quiz on command line arguments

عبور آرگومان خط فرمان Command line argument passing.

  • آزمون آرگومان های خط فرمان Quiz on command line arguments

مدیریت فایل File Handling

  • مقدمه ای بر مدیریت فایل، نوشتن کاراکترها در یک فایل متنی با استفاده از ()fputc Introduction to file handling, writing characters into a text file using fputc()

  • خواندن محتوای یک فایل متنی کاراکتر به کاراکتر با استفاده از fgetc(). Reading content of a text file character by character using fgetc().

  • خواندن یک خط از فایل متنی به آرایه کاراکتری با استفاده از تابع fgets Reading a line from text file into a character array using fgets function

  • خواندن داده های فرمت شده از فایل متنی با استفاده از تابع fscanf Reading formatted data from text file using fscanf fucntion

  • خواندن داده های فرمت شده از فایل متنی با استفاده از تابع fscanf Reading formatted data from text file using fscanf fucntion

  • نوشتن داده های فرمت شده در فایل متنی با استفاده از تابع fprintf Writing formatted data into text file using fprintf function

  • خواندن و نوشتن داده های قالب بندی شده - مثال دیگری Formatted data reading and writing - another example

  • خواندن و نوشتن داده های قالب بندی شده - مثال دیگری Formatted data reading and writing - another example

  • نوشتن در حالت باینری - تابع fwrite Writing in binary mode - fwrite function

  • نوشتن در حالت باینری - تابع fwrite Writing in binary mode - fwrite function

  • خواندن در حالت باینری - تابع fread Reading in binary mode - fread function

  • با استفاده از fseek نشانگر فایل را در هر مکان دلخواه منتقل کنید Moving the file pointer at any desired location using fseek

  • با استفاده از fseek نشانگر فایل را در هر مکان دلخواه منتقل کنید Moving the file pointer at any desired location using fseek

  • محاسبه تعداد رکوردهای یک فایل باینری با استفاده از ftell Calculating the number of records in a binary file using ftell

  • محاسبه تعداد رکوردهای یک فایل باینری با استفاده از ftell Calculating the number of records in a binary file using ftell

  • برنامه ای برای کپی کردن هر فایل - مقدمه A program to copy any file - Introduction

  • برنامه ای برای کپی کردن هر فایل - مقدمه A program to copy any file - Introduction

  • اجازه دهید برنامه کپی فایل را مرحله به مرحله توسعه دهیم. Let us Develop the file copy program step by step.

  • اجازه دهید برنامه کپی فایل را مرحله به مرحله توسعه دهیم. Let us Develop the file copy program step by step.

مدیریت فایل File Handling

  • مقدمه ای بر مدیریت فایل، نوشتن کاراکترها در یک فایل متنی با استفاده از ()fputc Introduction to file handling, writing characters into a text file using fputc()

  • خواندن محتوای یک فایل متنی کاراکتر به کاراکتر با استفاده از fgetc(). Reading content of a text file character by character using fgetc().

  • خواندن یک خط از فایل متنی به آرایه کاراکتری با استفاده از تابع fgets Reading a line from text file into a character array using fgets function

  • نوشتن داده های فرمت شده در فایل متنی با استفاده از تابع fprintf Writing formatted data into text file using fprintf function

  • خواندن در حالت باینری - تابع fread Reading in binary mode - fread function

عملگرهای بیتی - نحوه دستکاری بیت ها را بیاموزید. Bitwise operators - Learn how to manipulate bits.

  • مقدمه ای بر عملگرهای بیتی Introduction to bitwise operators

  • عملگر bitwise leftshift Bitwise leftshift operator

  • عملگر شیفت راست بیتی Bitwise right shift operator

  • عملگر Bitwise AND - چگونه کمی بررسی کنیم. Bitwise AND operator - how to check a bit.

  • تعداد بیت های مجموعه - با استفاده از AND و شیفت چپ. Count set bits - Using bitwise AND and left shift.

  • عدد صحیح امضا شده را همانطور که هست چاپ کنید. Print the signed integer as it is.

  • عدد صحیح امضا شده را همانطور که هست چاپ کنید. Print the signed integer as it is.

  • عملیات OR بیتی - چگونه یک بیت تنظیم نشده تنظیم کنیم؟ Bitwise OR operation - How to set an unset bit?

  • عملیات OR بیتی - چگونه یک بیت تنظیم نشده تنظیم کنیم؟ Bitwise OR operation - How to set an unset bit?

  • عملیات XOR بیتی. Bitwise XOR operation.

  • مکمل بیتی - هر بیت را معکوس کنید. Bitwise complement - invert every bits.

  • مکمل بیتی - هر بیت را معکوس کنید. Bitwise complement - invert every bits.

  • توسعه یک تابع معادل عملگر متمم بیتی. Developing a function equivalent of bitwise complement operator.

  • توسعه یک تابع معادل عملگر متمم بیتی. Developing a function equivalent of bitwise complement operator.

عملگرهای بیتی - نحوه دستکاری بیت ها را بیاموزید. Bitwise operators - Learn how to manipulate bits.

  • مقدمه ای بر عملگرهای بیتی Introduction to bitwise operators

  • عملگر bitwise leftshift Bitwise leftshift operator

  • عملگر شیفت راست بیتی Bitwise right shift operator

  • عملگر Bitwise AND - چگونه کمی بررسی کنیم. Bitwise AND operator - how to check a bit.

  • تعداد بیت های مجموعه - با استفاده از AND و شیفت چپ. Count set bits - Using bitwise AND and left shift.

  • عملیات XOR بیتی. Bitwise XOR operation.

برخی از توابع مفید کتابخانه C - توانایی شما را افزایش می دهد Some useful C library functions - enhance your ability

  • sprintf و snprintf - رشته فرمت شده را در آرایه کاراکتری بنویسید sprintf and snprintf - Write formatted string into character array

  • تابع sscanf - نحوه اسکن داده های فرمت شده از یک رشته Function sscanf - how to scan formatted data from a string

  • strtok - ابزار عالی برای استخراج اطلاعات از یک رشته جدا شده توسط جداکننده strtok - great tool to extract information from a string separated by delimiters

  • memset - یاد بگیرید که چگونه بلوک حافظه را با یک کاراکتر با استفاده از memset مقداردهی اولیه کنید memset - learn how to initialize block of memory with a character using memset

  • memset - یاد بگیرید که چگونه بلوک حافظه را با یک کاراکتر با استفاده از memset مقداردهی اولیه کنید memset - learn how to initialize block of memory with a character using memset

  • memcpy - از یک بلوک حافظه به بایت بایت دیگر کپی کنید memcpy - copy from one memory block to other byte-by-byte

  • عملکرد ساعت برای شمارش تعداد تیک های ساعت و اندازه گیری زمان سپری شده. clock function to count number of clock ticks and measure elapsed time.

برخی از توابع مفید کتابخانه C - توانایی شما را افزایش می دهد Some useful C library functions - enhance your ability

  • sprintf و snprintf - رشته فرمت شده را در آرایه کاراکتری بنویسید sprintf and snprintf - Write formatted string into character array

  • تابع sscanf - نحوه اسکن داده های فرمت شده از یک رشته Function sscanf - how to scan formatted data from a string

  • strtok - ابزار عالی برای استخراج اطلاعات از یک رشته جدا شده توسط جداکننده strtok - great tool to extract information from a string separated by delimiters

  • memcpy - از یک بلوک حافظه به بایت بایت دیگر کپی کنید memcpy - copy from one memory block to other byte-by-byte

  • عملکرد ساعت برای شمارش تعداد تیک های ساعت و اندازه گیری زمان سپری شده. clock function to count number of clock ticks and measure elapsed time.

آموزش اضافی - 1 مرتب سازی حباب Additional Learning - 1 Bubble Sort

  • الگوریتم مرتب سازی حباب Bubble Sort Algorithm

  • پیاده سازی مرتب سازی حبابی با استفاده از C Bubble Sort Implementation Using C

  • پیاده سازی مرتب سازی حبابی با استفاده از C Bubble Sort Implementation Using C

  • بهبود مرتب‌سازی حبابی بیشتر، نحوه خروج از حلقه برای مرتب‌سازی اولیه. Improving the Bubble Sort further, how to exit the loop for early sorting.

  • نحوه استفاده از تابع qsort کتابخانه برای مرتب سازی آرایه ها. How to use library qsort function for sorting arrays.

آموزش اضافی - 1 مرتب سازی حباب Additional Learning - 1 Bubble Sort

  • الگوریتم مرتب سازی حباب Bubble Sort Algorithm

  • بهبود مرتب‌سازی حبابی بیشتر، نحوه خروج از حلقه برای مرتب‌سازی اولیه. Improving the Bubble Sort further, how to exit the loop for early sorting.

  • نحوه استفاده از تابع qsort کتابخانه برای مرتب سازی آرایه ها. How to use library qsort function for sorting arrays.

یادگیری اضافی - 2 نشانگر تابع در C Additional Learning - 2 Function Pointers In C

  • معرفی اشاره گر تابع Function Pointer Introduction

  • معرفی اشاره گر تابع Function Pointer Introduction

  • یاد بگیرید که چگونه یک نشانگر تابع را اعلام کنید. Learn how to declare a function pointer.

  • یاد بگیرید که چگونه یک نشانگر تابع را اعلام کنید. Learn how to declare a function pointer.

  • نشانگر تابع در Action - برنامه ای که از نشانگر تابع استفاده می کند Function pointer in Action - Program that uses function pointer

یادگیری اضافی - 2 نشانگر تابع در C Additional Learning - 2 Function Pointers In C

  • نشانگر تابع در Action - برنامه ای که از نشانگر تابع استفاده می کند Function pointer in Action - Program that uses function pointer

نمایش نظرات

نظری ارسال نشده است.

برنامه نویسی C گام به گام - آموزش کامل برای مبتدیان
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
17.5 hours
152
Udemy (یودمی) udemy-small
20 خرداد 1399 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
16,846
4.4 از 5
دارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Shibaji Paul Shibaji Paul

مدرس برنامه نویسی با بیش از 16 سال سابقه

Shibaji Paul Shibaji Paul

مدرس برنامه نویسی با بیش از 16 سال سابقه

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.