ITGS122 : Introduction to Programming

Department

Department of Software Engineering

Academic Program

Bachelor in Software Engineering

Type

Compulsory

Credits

03

Prerequisite

ITGS113

Overview

An introduction to computing and program development in the C programming language. This includes a brief introduction to basic computer concepts, an understanding of the operating system sufficient for writing program. introduction to computer programming; Getting started in C programming: introduction to basic program syntax; Printing messages, data types and declarations, numeric and character data, expressions, printing results, and variables; Processing and interactive input: assignments, counting, and input and output of data; C's conditional statements; C's looping statements; Modularity using functions: user--defined functions, parameters and return values, standard library functions, scope, call--by--reference; More modularity using functions: scope, storage class, and call--by--reference; Arrays: single and two dimensional arrays, initializers, array parameters; Character strings: processing strings using loops, some character and string library functions; Structures: structure concepts, structures as parameters, arrays of structures; Additional or miscellaneous topics other material as time permits.

Intended learning outcomes

Knowledge &understand

  • The student's knowledge of the history of programming languages
  • Knowing the Variables, their types, and characteristics
  • Know the control and repetition sentences IF Statement, For Loop and While
  • Define and apply User Functions and the concept of Function Recursion
  • Knowledge and application of the concept of Pointers

mental skills

  • The student should compare between Variables and Constants
  • The student should distinguish between the use of types of variables and C reserved Keywords
  • The student should conclude the optimal use of Control sentences and repetition in writing programs
  • The student should distinguish the difference between the application of return by reference and return by value
  • The student should analyze the collection of data with different types using Struct

Practical & professional skills

  • Download and install the appropriate IDE software for the purpose of software development
  • RUN and DEBUG work to run programs and trace errors if any
  • Writing and running programs on a mobile phone in the absence of a laptop
  • Write and run programs using any text editor and Compiler

General and transferable skills

  • Ability to submit assignments and write reports
  • Ability to load and run programs in other operating systems such as Cygwin or Linux
  • The ability to download and install the latest versions from the Internet for IDE programs
  • Ability to run all programs written in the same programming language

Teaching and learning methods

  • From YouTube video Instructor’s lectures
  • PDF lectures are on the ClassHub learning platform
  • Application of programs in the laboratory

Methods of assessments

  • Midterm exam = 30
  • Lab Exam = 20
  • Final exam = 50

    Course contents

  • C Introduction
  • C Tokens
  • C Operators
  • C Flow Control- Conditionals
  • C Flow Control- Loops
  • C Functions
  • C Programming Arrays - 1D
  • C Programming Arrays - Multi-Dimensional
  • C Programming Pointers
  • C Programming Strings
  • C Programming Files
  • C Programming Struct
  • C Standard Library
  • C Programming Advanced

Networks Programming (ITSE405)
Mobile Applications Development (ITSE304)
Cryptographic Algorithms and Protocols (ITSE306)
Information Retrieval Systems (ITSE307)
Mobile Operating System (ITSE308)
Programming Paradigms (ITSE309)
Principles of Games Developments (ITSE401)
Multimedia Systems (ITSE404)
Cloud Computing (ITSE406)
Web Services (ITSE407)
Web Applications Development (ITSE408)
Modelling of Complex Systems (ITSE303)
Data Mining/Business Intelligence (ITSE302)
Social Networking (ITSE409)
Logic Programming (ITSE301)
Mathematics I (ITMM111)
Physics (ITPH111)
Problem solving Technic (ITGS113)
Intro to Information Technology (ITGS111)
General English1 (ITEL111)
Arabic language 1 (ITAR111)
Mathematics II (ITMM122)
Arabic language 2 (ITAR122)
General English2 (ITEL122)
Introduction to Programming (ITGS122)
System Analysis and Design (ITGS124)
logic Circuit Design (ITGS126)
Introduction to Networking (ITGS215)
Introduction to Statistics (ITST211)
Object Oriented Programmin (ITGS211)
Introduction to Software Engineering (ITGS213)
Discrete Structures (ITGS217)
Numerical analysis (ITGS219)
Introduction to Databases (ITGS228)
Data Structure (ITGS220)
Foundation of Information Systems (ITGS222)
Introduction to Internet Programming (ITGS226)
Computer Architucture & Organization (ITGS223)
Information Security (ITGS224)
Design and Analysis algorithms (ITGS301)
IT Project Management (ITGS303)
Software Requirements Analysis (ITSE311)
Advanced Databases (ITSE312)
Scientific Writing (ITGS304)
Modern Programming Language (ITSE322)
Software Construction (ITSE321)
Operating System (ITGS302)
Software Design and Architecture (ITSE411)
Advanced Internet Programming (ITSE412)
Human Computer Interaction (ITSE413)
Software Engineering Ethics (ITSE414)
Software Quality Assurance and Testing (ITSE421)
Software Reuse and Component-Based Software Engineering (CBSE) (ITSE422)
Visual Programing (ITSE423)
software design models (ITSE424)