C Programming Language Lab

Title: C Programming Language Lab

Introduction:

This post contains the problems students should start in C Programming Language Laboratory syllabus (Applicable to CSE, IT, and allied branches taking this course). Use this as a reference for your lab experiments and preparation.

C Programming Language Lab

[Note: The programs may be executed using any available Open Source/ Freely available IDE. Some of the Tools available are:

This list is not exhaustive and is NOT in any order of preference]

Course Objectives:
The students will learn the following:

  • To work with an IDE to create, edit, compile, run and debug programs

  • To analyze the various steps in program development.

  • To develop programs to solve basic problems by understanding basic concepts in C like operators, control statements etc.

  • To develop modular, reusable and readable C Programs using the concepts like functions, arrays etc.

  • To Write programs using the Dynamic Memory Allocation concept.

  • To create, read from and write to text and binary files

Course Outcomes: The candidate is expected to be able to:

  • formulate the algorithms for simple problems

  • translate given algorithms to a working and correct program

  • correct syntax errors as reported by the compilers

  • identify and correct logical errors encountered during execution

  • represent and manipulate data with arrays, strings and structures

  • use pointers of different types

  • create, read and write to and from simple text and binary files

  • modularize the code with functions so that they can be reused

List of Experiments:

Practice sessions:

  1. Write a simple program that prints the results of all the operators available in C (including pre/ post increment , bitwise and/or/not , etc.). Read required operand values from standard input.

  2. Write a simple program that converts one given data type to another using auto conversion and casting. Take the values from standard input.

Simple numeric problems:

  1. Write a program for finding the max and min from the three numbers.

  2. Write the program for the simple, compound interest.

  3. Write a program that declares Class awarded for a given percentage of marks, where mark <40%= Failed, 40% to <60% = Second class, 60% to <70%=First class, >= 70% = Distinction. Read percentage from standard input.

  4. Write a program that prints a multiplication table for a given number and the number of rows in the table. For example, for a number 5 and rows = 3, the output should be: 5 x 1 = 5 5 x 2 = 10 5 x 3 = 15

  5. Write a program that shows the binary equivalent of a given positive number between 0 to 255.

Expression Evaluation:

  1. A building has 10 floors with a floor height of 3 meters each. A ball is dropped from the top of the building. Find the time taken by the ball to reach each floor. (Use the formula s=ut+21​at2 where u and a are the initial velocity in m/sec (= 0) and acceleration in m/sec^2 (= 9.8 m/s^2)).

  2. Write a C program, which takes two integer operands and one operator from the user, performs the operation and then prints the result. (Consider the operators +, -, *, /, % and use Switch Statement)

  3. Write a program that finds if a given number is a prime number

  4. Write a C program to find the sum of individual digits of a positive integer and test given number is palindrome.

  5. A Fibonacci sequence is defined as follows: the first and second terms in the sequence are 0 and 1. Subsequent terms are found by adding the preceding two terms in the sequence. Write a C program to generate the first n terms of the sequence.

  6. Write a C program to generate all the prime numbers between 1 and n, where n is a value supplied by the user.

  7. Write a C program to find the roots of a Quadratic equation.

  8. Write a C program to calculate the following, where x is a fractional value. 1−x/2+x2/4−x3/6

  9. Write a C program to read in two numbers, x and n, and then compute the sum of this geometric progression: 1+x+x^2+x^3+⋯+x^n. For example: if n is 3 and x is 5, then the program computes 1+5+25+125.

Arrays, Pointers and Functions:

  1. Write a C program to find the minimum, maximum and average in an array of integers.

  2. Write a function to compute mean, variance, Standard Deviation, sorting of n elements in a single dimension array.

  3. Write a C program that uses functions to perform the following:
    i. Addition of Two Matrices

    ii. Multiplication of Two Matrices

    iii. Transpose of a matrix with memory dynamically allocated for the new matrix as row and column counts may not be the same.

  4. Write C programs that use both recursive and non-recursive functions:
    i. To find the factorial of a given integer.
    ii. To find the GCD (greatest common divisor) of two given integers.
    iii. To find x^n

  5. Write a program for reading elements using a pointer into an array and display the values using the array.

  6. Write a program for display values reverse order from an array using a pointer.

  7. Write a program through a pointer variable to sum of n elements from an array.

Files:

  1. Write a C program to display the contents of a file to standard output device.

  2. Write a C program which copies one file to another, replacing all lowercase characters with their uppercase equivalents.

  3. Write a C program to count the number of times a character occurs in a text file. The file name and the character are supplied as command line arguments.

  4. Write a C program that does the following:
    i. It should first create a binary file and store 10 integers, where the file name and 10 values are given in the command line. (hint: convert the strings using atoi function(ASCII to Integer - converts the string representation of a number into an int.))
    ii. Now the program asks for an index and a value from the user and the value at that index should be changed to the new value in the file. (hint: use fseek function)
    iii. The program should then read all 10 values and print them back.

  5. Write a C program to merge two files into a third file (i.e., the contents of the first file followed by those of the second are put in the third file).

Strings:

  1. Write a C program to convert a Roman numeral ranging from I to L to its decimal equivalent.

  2. Write a C program that converts a number ranging from 1 to 50 to Roman equivalent

  3. Write a C program that uses functions to perform the following operations:
    i. To insert a sub-string into a given main string from a given position.
    ii. To delete n Characters from a given position in a given string.

  4. Write a C program to determine if the given string is a palindrome or not (Spelled same in both directions with or without a meaning like madam, civic, noon, abcba, etc.)

  5. Write a C program that displays the position of a character ch in the string S or – 1 if S doesn‘t contain ch. f. Write a C program to count the lines, words and characters in a given text.

Miscellaneous:

  1. Write a menu driven C program that allows a user to enter n numbers and then choose between finding the smallest, largest, sum, or average. The menu and all the choices are to be functions. Use a switch statement to determine what action to take. Display an error message if an invalid choice is entered.

  2. Write a C program to construct a pyramid of numbers as follows:

1              *             1                 1                *
1 2          * *           2 3              2 2            * *
1 2 3       * * *        4 5 6           3 3 3        * * *
1 2 3 4   * * * *      7 8 9 10     4 4 4 4    * *
                                                                     *

Sorting and Searching:

  1. Write a C program that uses non recursive function to search for a Key value in a given list of integers using linear search method.

  2. Write a C program that uses non recursive function to search for a Key value in a given sorted list of integers using binary search method.

  3. Write a C program that implements the Bubble sort method to sort a given list of integers in ascending order.

  4. Write a C program that sorts the given array of integers using selection sort in descending order

  5. Write a C program that sorts the given array of integers using insertion sort in ascending order f. Write a C program that sorts a given array of names

Take the Next Step:

Keep practicing, keep improving!

Best Regards, Kandula Vamshi Reddy Founder, The KVR26

Previous
Previous

Setting Up Your C Programming Environment

Next
Next

The Importance of the PPS Lab!