Uka Tarsadia University
B. Tech.
      Semester I
PROGRAMMING WITH C
         IT3006
 EFFECTIVE FROM July-2021
   Syllabus version: 1.00
                                                             Teaching Scheme
 Subject
                     Subject Title                      Hours                 Credits
  Code
                                               Theory      Practical    Theory     Practical
  IT3006          Programming with C               3            4         3              2
                                                     Theory              Practical
 Subject                                           Examination         Examination      Total
                      Subject Title                   Marks               Marks
  Code                                                                                  Marks
                                               Internal External           CIE
  IT3006          Programming with C               40           60        100            200
Objectives of the course:
 To aware the students about programming paradigms by developing an
  understanding about basic concepts of programming.
 To develop an understanding about programming concepts and techniques to solve
  real – world problems.
Course outcomes:
Upon completion of the course, the student shall be able to
CO1: Understand computer and systems software, and variable and expressions.
CO2: Explore basic input – output methodologies and control structures.
CO3:Use arrays and string to handle problems.
CO4:Understand the functions and develop user – defined functions to solve the
     problem.
CO5: Understand the need of pointers and implement the pointers.
CO6: Apply file operations to handle real – world applications.
 Sr. No.                                 Topics                                         Hours
                                        Unit – I
    1      Computers and System software                                                  5
           Classification of computers, Numbers, Software life cycle,
           Algorithms, Flowcharts, Pseudo code, Recursive algorithms,
           Structured programming, Hello World program, Compilers,
           Operating systems, Running C programs, Linker, Preprocessor,
           Case sensitiveness, Statement separation, Standard input and
           output devices, Popular features of C
    Variables and Expressions
    Character set, Identifiers and keywords, Variables, Character and
    character strings, Qualifiers, typedef statement, Constants, Const
    qualifier, Operators and expressions, Operator precedence and
    associativity.
                                 Unit – II
2   Basic Input – Output                                                    9
    String input and output, General output and input, Types of
    characters in format strings, scanf width specifier, Assignment
    suppression character, Format specifiers of scanf.
    Control Structures
    If statement, if-else statement, Multi – way decision, Compound
    statements, for loop, while loop, do-while loop, break statement,
    switch statement, continue statement, go to statement.
                                 Unit – III
3   Arrays                                                                  8
    Introduction to array, Declaration and initialization of 1D and 2D
    array, Memory allocation of 1D and 2D arrays, Matrix operations
    using array, Multi – dimensional array.
    Strings
    Importance of NULL character, declaration, initialization and input-
    output methods of string, Formatted output of string, Arithmetic
    operations on characters, String comparison and concatenation,
    String handling functions.
                                 Unit – IV
4   Functions                                                               6
    Concepts associated with functions, User defined and library
    functions, Functions accepting more than one parameter, Function
    parameters, Return values, Recursion, Comparison of iteration and
    recursion, Variable length argument lists.
                                 Unit – V
5   Pointers                                                                9
    Definition and uses of pointers, Address operator, Pointer
    variables, Dereferencing pointers, void pointers, Pointer arithmetic,
    Pointers to pointers, Pointers and arrays, Passing arrays to
    functions, Pointers and functions, Accessing arrays inside
    functions, Pointers and two dimensional arrays, Pointers and three
    dimensional arrays, Array of pointers, Pointers and strings, Array
    of pointers to strings, Pointers to functions, Pointers to constant
    objects, Constant pointers.
                                 Unit – VI
     6      Structures and Unions                                                     8
            Declaring and using structures, Structure initialization, Structure
            within a structure, Operations on structures, Array of structure,
            Array within structure, Unions, Differences between structures and
            unions, Operations on a union.
            Files
            File structure, File handling functions, File types, Unbuffered and
            buffered files, Error handling, Low level file I/O, Redirection and
            piping, Directory functions.
Sr.                        Programming with C (Practical)                            Hours
No.
 1       Write a program to print “Hello Students”.                                    2
 2       Write a program to take an integer as an input from user and print the        2
         same number on terminal.
3        Write a program to take two integers from users and show the                  2
         addition to two numbers.
 4       Write program to print area of various shapes.                                2
 5       Write a program to design basic calculator.                                   4
 6       Write a program to calculate the volume of cube.                              2
 7       Write a program to swap two numbers using third variable.                     2
 8       Write a program to check whether the number is odd or even.                   2
 9       Write a program to find largest number among three numbers                    2
10       Write a program to design basic calculator using switch case.                 2
11       Write a program to find sum of all integers greater than 100 & less           2
         than 200 and are divisible by 5.
12       Write a program to check whether the given number is prime or not.            4
13       Write a program to sort an integer array in ascending order.                  2
14       Write a program to perform addition of two 3*3 matrices.                      4
15       Write a program to accept a string and find the number of vowels in it.       2
16       Write a program using function program to add first N numbers.                4
17       Write a program to calculate factorial of a number using recursion.           4
18       Write a program that used user defined function swap() that                   4
         interchange the value of two variable using pointer.
19       Write a program using pointer and function to determine the length of         4
         string.
20       Write a program to copy the content of source file into destination file.     4
21       Write a program to count the total numbers of characters present in           4
         given input file.
Text book:
1. K R Venugopal and Sudeep R Prasad - “Mastering in C” – 3rd Edition, Tata McGraw
   Hill.
Reference books:
1. Brian W. Kernighan, Dennis M. Ritchie “ –The C Programming Language” – 2nd
   edition, Prentice Hall Publication.
2. YashavantKanetkar - “Let us C” - 8th edition, BPB Publications.
3. Pradip Dey, Manas Ghosh - “Programming in C” – 2nd edition, Oxford Higher
    Education.
Course objectives and Course outcomes mapping:
 To aware the students about programming paradigms by developing an
  understanding about basic concepts of programming: CO1, CO2
 To develop an understanding about programming concepts and techniques to solve
  real – world problems: CO2, CO3, CO4, CO5, CO6
Course units and Course outcomes mapping:
 Unit                                                    Course Outcomes
 No.                Unit Name
                                               CO1   CO2   CO3    CO4    CO5   CO6
  1     Computers,     System     Software,
                                               ✓
        Variables and Expressions
  2     Basic Input – Output and Control
                                                     ✓
        Structures
  3     Arrays and Strings                                  ✓
  4     Functions                                                  ✓
  5     Pointers                                                           ✓
  6     Structure, Union and File Operations                       ✓             ✓
Programme outcomes:
PO 1:    Engineering knowledge: An ability to apply knowledge of mathematics,
         science, and engineering.
PO 2:    Problem analysis: An ability to identify, formulates, and solves engineering
         problems.
PO 3:    Design/development of solutions: An ability to design a system, component,
         or process to meet desired needs within realistic constraints.
PO 4:   Conduct investigations of complex problems: An ability to use the techniques,
        skills, and modern engineering tools necessary for solving engineering
        problems.
PO 5:   Modern tool usage: The broad education and understanding of new
        engineering techniques necessary to solve engineering problems.
PO 6:   The engineer and society: Achieve professional success with an
        understanding and appreciation of ethical behavior, social responsibility, and
        diversity, both as individuals and in team environments.
PO 7:   Environment and sustainability: Articulate a comprehensive world view that
        integrates diverse approaches to sustainability.
PO 8:   Ethics: Identify and demonstrate knowledge of ethical values in non-
        classroom activities, such as service learning, internships, and field work.
PO 9:   Individual and team work: An ability to function effectively as an individual,
        and as a member or leader in diverse teams, and in multidisciplinary settings.
PO 10: Communication: Communicate effectively on complex engineering activities
       with the engineering community and with society at large, such as, being able
       to comprehend and write effective reports and design documentation, make
       effective presentations, and give/receive clear instructions.
PO 11: Project management and finance: An ability to demonstrate knowledge and
       understanding of the engineering and management principles and apply
       these to one’s own work, as a member and leader in a team, to manage
       projects and in multidisciplinary environments.
PO 12: Life-long learning: A recognition of the need for, and an ability to engage in
       life-long learning.
Programme outcomes and Course outcomes mapping:
  Programme                        Course Outcomes
   Outcomes
                 CO1      CO2       CO3      CO4     CO5   CO6
     PO1          ✓        ✓         ✓        ✓      ✓     ✓
     PO2                   ✓         ✓        ✓      ✓     ✓
     PO3                   ✓         ✓        ✓      ✓     ✓
     PO4
     PO5
     PO6
     PO7
     PO8
     PO9
     PO10
     PO11
     PO12