{"id":2573,"date":"2023-08-10T14:54:15","date_gmt":"2023-08-10T14:54:15","guid":{"rendered":"https:\/\/codeinsightacademy.com\/blog\/?p=2573"},"modified":"2023-08-10T15:22:58","modified_gmt":"2023-08-10T15:22:58","slug":"c-crash-course","status":"publish","type":"post","link":"https:\/\/codeinsightacademy.com\/blog\/c-programming\/c-crash-course\/","title":{"rendered":"C crash course"},"content":{"rendered":"\n<p><strong>Day 1: Introduction to C Programming<\/strong><\/p>\n\n\n\n<ul><li><strong>Session 1 (3 hours):<\/strong> Introduction to C Programming.<\/li><li><strong>Explanation:<\/strong> Learn about the basics of C programming, the structure of a C program, and how to use the <code>printf<\/code> function to display output.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    printf(\"Hello, World!\\n\");\n    return 0;\n}<\/pre>\n\n\n\n<p><strong>Assignment 1:<\/strong> Write a program that displays &#8220;Hello, World!&#8221; on the screen.<\/p>\n\n\n\n<p>Output:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Hello, World!<\/pre>\n\n\n\n<p><strong>Assignment 2:<\/strong> Create a program that calculates the area of a rectangle using user-provided width and height.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    float width, height, area;\n\n    printf(\"Enter width: \");\n    scanf(\"%f\", &amp;width);\n\n    printf(\"Enter height: \");\n    scanf(\"%f\", &amp;height);\n\n    area = width * height;\n    printf(\"Area: %.2f\\n\", area);\n\n    return 0;\n}\n<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter width: 4.5\n  Enter height: 7.2\n  Area: 32.40<\/pre>\n\n\n\n<ul><li><strong>Session 2 (3 hours):<\/strong> Data types, variables, and basic input\/output.<\/li><li><strong>Explanation:<\/strong> Learn about different data types, how to declare variables, and use the <code>scanf<\/code> function to read user input. Perform basic arithmetic calculations.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    int num1, num2, sum;\n\n    printf(\"Enter two numbers: \");\n    scanf(\"%d %d\", &amp;num1, &amp;num2);\n\n    sum = num1 + num2;\n    printf(\"Sum: %d\\n\", sum);\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Write a program that takes user input for two numbers, adds them, and displays the result. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter two numbers: 3 5\n  Sum: 8<\/pre>\n\n\n\n<p><strong>Assignment 2:<\/strong> Develop a program that converts temperature from Fahrenheit to Celsius.<\/p>\n\n\n\n<p>&#8220;`c<br>#include<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">int main() {\n    float fahrenheit, celsius;\n\n    printf(\"Enter temperature in Fahrenheit: \");\n    scanf(\"%f\", &amp;fahrenheit);\n\n    celsius = (fahrenheit - 32) * 5 \/ 9;\n    printf(\"Temperature in Celsius: %.2f\\n\", celsius);\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter temperature in Fahrenheit: 68\n  Temperature in Celsius: 20.00<\/pre>\n\n\n\n<p><strong>Day 2: Control Flow and Functions<\/strong><\/p>\n\n\n\n<ul><li><strong>Session 1 (3 hours):<\/strong> Conditional statements (if, else if, else), logical operators.<\/li><li><strong>Explanation:<\/strong> Learn about conditional statements to make decisions in your program based on conditions. Use logical operators to combine conditions.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    int num;\n\n    printf(\"Enter a number: \");\n    scanf(\"%d\", &amp;num);\n\n    if (num > 0) {\n        printf(\"Positive\\n\");\n    } else if (num &lt; 0) {\n        printf(\"Negative\\n\");\n    } else {\n        printf(\"Zero\\n\");\n    }\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Write a program that checks if a given number is positive, negative, or zero.<br>Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter a number: -7\n  Negative<\/pre>\n\n\n\n<ul><li><strong>Assignment 2:<\/strong> Create a program that determines the largest of three user-provided numbers.<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">```c\n#include &lt;stdio.h>\n\nint main() {\n    int num1, num2, num3, largest;\n\n    printf(\"Enter three numbers: \");\n    scanf(\"%d %d %d\", &amp;num1, &amp;num2, &amp;num3);\n\n    if (num1 >= num2 &amp;&amp; num1 >= num3) {\n        largest = num1;\n    } else if (num2 >= num1 &amp;&amp; num2 >= num3) {\n        largest = num2;\n    } else {\n        largest = num3;\n    }\n\n    printf(\"Largest: %d\\n\", largest);\n\n    return 0;\n}\n```<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter three numbers: 15 9 12\n  Largest: 15<\/pre>\n\n\n\n<ul><li><strong>Session 2 (3 hours):<\/strong> Loops (while, for) and switch statements.<\/li><li><strong>Explanation:<\/strong> Learn how to create loops for repetitive tasks using <code>while<\/code> and <code>for<\/code>. Use the <code>switch<\/code> statement for multiple choices.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    int num, i;\n\n    printf(\"Enter a number: \");\n    scanf(\"%d\", &amp;num);\n\n    for (i = 1; i &lt;= 10; i++) {\n        printf(\"%d * %d = %d\\n\", num, i, num * i);\n    }\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Implement a program that prints a multiplication table for a given number. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter a number: 7\n  7 * 1 = 7\n  7 * 2 = 14\n  ...\n  7 * 10 = 70<\/pre>\n\n\n\n<p><strong>Assignment 2:<\/strong> Write a program that calculates the sum of all even numbers between 1 and a user-provided limit using a loop.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    int limit, sum = 0, i;\n\n    printf(\"Enter a limit: \");\n    scanf(\"%d\", &amp;limit);\n\n    for (i = 2; i &lt;= limit; i += 2) {\n        sum += i;\n    }\n\n    printf(\"Sum of even numbers: %d\\n\", sum);\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter a limit: 10\n  Sum of even numbers: 30<\/pre>\n\n\n\n<p><strong>Day 3: Arrays and Strings<\/strong><\/p>\n\n\n\n<ul><li><strong>Session 1 (3 hours):<\/strong> Introduction to arrays, declaring and initializing arrays.<\/li><li><strong>Explanation:<\/strong> Learn about arrays, how to declare them, and access their elements. Understand the concept of indexing and looping through arrays.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    int numbers[5] = {10, 20, 30, 40, 50};\n\n    printf(\"Third element: %d\\n\", numbers[2]);\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Write a program to find the sum of all elements in an array. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Sum of array elements: 150<\/pre>\n\n\n\n<ul><li><strong>Assignment 2:<\/strong> Develop a program that finds the smallest element in an array of integers.<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    int array[5] = {25, 10, 15, 20, 5};\n    int smallest = array[0], i;\n\n    for (i = 1; i &lt; 5; i++) {\n        if (array[i] &lt; smallest) {\n            smallest = array[i];\n        }\n    }\n\n    printf(\"Smallest element: %d\\n\", smallest);\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Smallest element: 5<\/pre>\n\n\n\n<ul><li><strong>Session 2 (3 hours):<\/strong> Introduction to strings, string functions (strlen, strcpy, etc.).<\/li><li><strong>Explanation:<\/strong> Learn about strings in C, which are arrays of characters. Explore various string functions for manipulation.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    char name[20] = \"John\";\n    printf(\"Hello, %s!\\n\", name);\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Create a program that checks if a given string is a palindrome. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter a string: radar\n  Palindrome<\/pre>\n\n\n\n<p><strong>Assignment 2:<\/strong> Write a program that counts the number of vowels in a user-provided string.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n#include &lt;string.h>\n\nint main() {\n    char str[100];\n    int i, vowels = 0;\n\n    printf(\"Enter a string: \");\n    scanf(\"%s\", str);\n\n    for (i = 0; i &lt; strlen(str); i++) {\n        char ch = tolower(str[i]);\n        if (ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u') {\n            vowels++;\n        }\n    }\n\n    printf(\"Number of vowels: %d\\n\", vowels);\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter a string: education\n  Number of vowels: 5<\/pre>\n\n\n\n<p><strong>Day 4: Pointers and Memory Management<\/strong><\/p>\n\n\n\n<ul><li><strong>Session 1 (3 hours):<\/strong> Pointers, pointer arithmetic, and references.<\/li><li><strong>Explanation:<\/strong> Learn about pointers, memory addresses, and how to use pointers to manipulate variables and arrays.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint main() {\n    int num = 5;\n    int *ptr = &amp;num;\n\n    printf(\"Value of num: %d\\n\", num);\n    printf(\"Value at ptr: %d\\n\", *ptr);\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Write a program that swaps the values of two variables using pointers. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Before swapping: num1 = 5, num2 = 10\n  After swapping: num1 = 10, num2 = 5<\/pre>\n\n\n\n<ul><li><strong>Assignment 2:<\/strong> Develop a program that uses pointers to reverse an array of integers. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Original array: 5 10 15 20 25\n  Reversed array: 25 20 15 10 5<\/pre>\n\n\n\n<ul><li><strong>Session 2 (3 hours):<\/strong> Dynamic memory allocation (malloc, free) and memory leaks.<\/li><li><strong>Explanation:<\/strong> Understand dynamic memory allocation using <code>malloc<\/code>, and how to free allocated memory using <code>free<\/code>. Learn to prevent memory leaks.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n#include &lt;stdlib.h>\n\nint main() {\n    int *arr;\n    int n, i, sum = 0;\n\n    printf(\"Enter the number of elements: \");\n    scanf(\"%d\", &amp;n);\n\n    arr = (int *)malloc(n * sizeof(int));\n\n    if (arr == NULL) {\n        printf(\"Memory allocation failed.\\n\");\n        return 1;\n    }\n\n    for (i = 0; i &lt; n; i++) {\n        printf(\"Enter element %d: \", i + 1);\n        scanf(\"%d\", &amp;arr[i]);\n        sum += arr[i];\n    }\n\n    printf(\"Average: %.2f\\n\", (float)sum \/ n);\n\n    free(arr);\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Implement a program that dynamically creates an array, populates it with user input, and calculates the average. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter the number of elements: 4\n  Enter element 1: 12\n  Enter element 2: 15\n  Enter element 3: 20\n  Enter element 4: 10\n  Average: 14.25<\/pre>\n\n\n\n<p><strong>Assignment 2:<\/strong> Write a program that removes duplicates from an array using dynamic memory allocation.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n#include &lt;stdlib.h>\n\nint* removeDuplicates(int *arr, int *size) {\n    int *temp = (int *)malloc(*size * sizeof(int));\n\n    if (temp == NULL) {\n        printf(\"Memory allocation failed.\\n\");\n        exit(1);\n    }\n\n    \/\/ ... code to remove duplicates ...\n\n    return temp;\n}\n\nint main() {\n    \/\/ ... code to input array ...\n\n    int *result = removeDuplicates(array, &amp;size);\n\n    \/\/ ... code to display result ...\n\n    free(result);\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Original array: 5 10 15 10 20 25 15 30\n  Array after removing duplicates: 5 10 15 20 25 30<\/pre>\n\n\n\n<p><strong>Day 5: Functions, Structures, and File I\/O<\/strong><\/p>\n\n\n\n<ul><li><strong>Session 1 (3 hours):<\/strong> Functions, function prototypes, and header files.<\/li><li><strong>Explanation:<\/strong> Learn about functions, how to declare and define them. Understand the concept of recursion for solving problems.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint factorial(int n) {\n    if (n == 0 || n == 1) {\n        return 1;\n    }\n    return n * factorial(n - 1);\n}\n\nint main() {\n    int num;\n\n    printf(\"Enter a positive integer: \");\n    scanf(\"%d\", &amp;num);\n\n    printf(\"Factorial of %d is %d\\n\", num, factorial(num));\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Write a program that calculates the factorial of a given number using a recursive function. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter a positive integer: 5\n  Factorial of 5 is 120<\/pre>\n\n\n\n<p><strong>Assignment 2:<\/strong> Create a program that calculates the nth term of the Fibonacci sequence using a recursive function.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nint fibonacci(int n) {\n    if (n &lt;= 1) {\n        return n;\n    }\n    return fibonacci(n - 1) + fibonacci(n - 2);\n}\n\nint main() {\n    int num;\n\n    printf(\"Enter a positive integer: \");\n    scanf(\"%d\", &amp;num);\n\n    printf(\"Fibonacci(%d) = %d\\n\", num, fibonacci(num));\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Enter a positive integer: 7\n  Fibonacci(7) = 13<\/pre>\n\n\n\n<ul><li><strong>Session 2 (3 hours):<\/strong> Introduction to structures and file I\/O.<\/li><li><strong>Explanation:<\/strong> Learn about structures, how to define them, and how to use them to group related data. Explore file input\/output operations.<\/li><li><strong>Syntax Example:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nstruct Student {\n    char name[50];\n    int marks[3];\n};\n\nint main() {\n    struct Student student1;\n\n    printf(\"Enter student name: \");\n    scanf(\"%s\", student1.name);\n\n    printf(\"Enter marks for three subjects: \");\n    scanf(\"%d %d %d\", &amp;student1.marks[0], &amp;student1.marks[1], &amp;student1.marks[2]);\n\n    \/\/ ... code to calculate grade ...\n\n    return 0;\n}<\/pre>\n\n\n\n<ul><li><strong>Assignment 1:<\/strong> Develop a program that reads data from a text file, calculates the sum and average, and writes the results to another file. Output (example):<\/li><\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Sum: 85\n  Average: 17.00<\/pre>\n\n\n\n<p><strong>Assignment 2:<\/strong> Write a program that reads student data from a file, calculates their grades, and outputs the result to another file.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nstruct Student {\n    char name[50];\n    int marks[3];\n};\n\nchar calculateGrade(int marks) {\n    \/\/ ... code to calculate grade ...\n}\n\nint main() {\n    FILE *inputFile = fopen(\"students.txt\", \"r\");<\/pre>\n\n\n\n<p>FILE *outputFile = fopen(&#8220;grades.txt&#8221;, &#8220;w&#8221;);<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">    struct Student student;\n\n    while (fscanf(inputFile, \"%s %d %d %d\", student.name, &amp;student.marks[0], &amp;student.marks[1], &amp;student.marks[2]) != EOF) {\n        \/\/ ... code to calculate grade ...\n\n        fprintf(outputFile, \"Student Name: %s\\n\", student.name);\n        fprintf(outputFile, \"Marks: %d %d %d\\n\", student.marks[0], student.marks[1], student.marks[2]);\n        fprintf(outputFile, \"Grade: %c\\n\", calculateGrade(totalMarks));\n    }\n\n    fclose(inputFile);\n    fclose(outputFile);\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Student Name: John Doe\n  Marks: 80 85 90\n  Grade: A<\/pre>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#include &lt;stdio.h>\n\nstruct Student {\n    char name[50];\n    int marks[3];\n};\n\nchar calculateGrade(int marks) {\n    \/\/ ... code to calculate grade ...\n}\n\nint main() {\n    FILE *inputFile = fopen(\"students.txt\", \"r\");\n\n\n    FILE *outputFile = fopen(\"grades.txt\", \"w\");\n\n    struct Student student;\n\n    while (fscanf(inputFile, \"%s %d %d %d\", student.name, &amp;student.marks[0], &amp;student.marks[1], &amp;student.marks[2]) != EOF) {\n        \/\/ ... code to calculate grade ...\n\n        fprintf(outputFile, \"Student Name: %s\\n\", student.name);\n        fprintf(outputFile, \"Marks: %d %d %d\\n\", student.marks[0], student.marks[1], student.marks[2]);\n        fprintf(outputFile, \"Grade: %c\\n\", calculateGrade(totalMarks));\n    }\n\n    fclose(inputFile);\n    fclose(outputFile);\n\n    return 0;\n}<\/pre>\n\n\n\n<p>Output (example):<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  Student Name: John Doe\n  Marks: 80 85 90\n  Grade: A<\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Day 1: Introduction to C Programming Session 1 (3 hours): Introduction to C Programming. Explanation: Learn about the basics of C programming, the structure of a C program, and how to use the printf function to display output. Syntax Example: Assignment 1: Write a program that displays &#8220;Hello, World!&#8221; on the screen. Output: Assignment 2: [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/2573"}],"collection":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/comments?post=2573"}],"version-history":[{"count":2,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/2573\/revisions"}],"predecessor-version":[{"id":2576,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/2573\/revisions\/2576"}],"wp:attachment":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/media?parent=2573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/categories?post=2573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/tags?post=2573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}