Programming Applications
Weekly outline
-
Course Rules:
Website:
- When you sign up, please use the same name you have in your AASTMT records, and include your AASTMT ID. This how I can migrate your grades to the AASTMT system.
- Login often to follow up with assignment deadlines and announcements. Its your responsibility to keep up with the course. Failure to receive emails or notifications is no excuse. Everything is announced in class and then published in moodle.
Academic Honesty:
- Please confirm with the AASTMT policies regarding plagiarism and cheating. A zero grade for the violating submission will be given the first time, then reported to the department for further action.
- Please ask questions in the online forum to allow everyone to join and benefit from the discussions, and avoid private emails to the lecturers and TAs. Contact the teachers privately only about your personal grades or circumstances, not about the course content.
How to score A+ in this course?
- Please do all practicals and assignments and study regularly. In case of problems, please ask questions. Accumulating problems will make things worse as the semester goes by.
An advanced C-language Programming is provided in this course: two dimensional arrays, strings, pointers, recursion, structures, bitwise-operators, input-output interfacing as well as text and binary files are covered in details. Projects are required from students to increase their skills in C programming.Learning Outcomes:
The student will be able to:
- Study C-language programming techniques, files, pointers, structure, string, and array.
Course Topics:
- Revision of structured programming constructs: selection, repetition, and Functions.
- Revision of one dimensional array.
- Searching and sorting.
- Two dimensional arrays.
- Pointers.
- Strings.
- Structures.
- Structures/Unions.
- Recursion.
- Text Files.
- Binary Files.
- Bitwise Operators/ I/O Interfacing.
- Advanced Applications.
J.Hanly and E. Koffman, ”C Program Design for Engineers”, Addison Wesley, latest edition.
PREREQUISITE: CC 112
Grading Scheme:
Week 7 Quizes 5% Lab Submissions 2.5% Assignments 2.5% Midterm 1 20% Week 12 Quizes 5% Lab Submissions 2.5% Assignments 2.5% Midterm 2 10% Project 10% Final Exams Final Practical Exam 10% Final Written Exam 30% -
Follow the links on the left hand side menu to step through the examples.
-
Week1: Learning Objectives - Ch1, 2:
- Program execution
- Program Layout
- Syntax of some C language elements
- Arithmetic expressions
- Common programming errors
-
Week2: Chapter 3: Functions, Chapter 4: If, Switch, Chapter 5: Loops
Learning Objectives:
- Revise Functions, arguments, and return statement
- Revise if and switch statements
- Revise, while, do .. while and for loops
-
Eid Al- Adha Holidays
-
Week3: Chapter 7: 1D Arrays with Searching
Learning Objectives:
- To learn how to declare and use arrays for storing collections of values of the same type
- To understand how to use a subscript to reference the individual values in an array
- To learn how to process the elements of an array in sequential order using loops
- To understand how to pass individual array elements and entire arrays through function arguments
- To learn a method for searching an array
-
Week 4: Chapter 7: Sorting and 2D Arrays
Learning Objectives:
- To learn a method for sorting an array
- Introduction to 2-D Arrays
- Declaration of 2-D Arrays
- Accessing 2-D Array elements
- Initialization of 2-D Arrays
- Processing 2-D Arrays
- 2-D Arrays as parameters to functions
-
Week 5: Chapter 6: Pointers & Modular Programming
Learning Objectives:
- Introducing Functions that return multiple results
- What is a Pointer variable?
- Functions returning multiple results
- Triple use for Asterisk (*)
-
More Examples
-
Week 6: Chapter 8: Strings
Learning Objectives:
- What is a String?
- The NULL Character ‘\0’ in Strings
- Input/Output with printf and scanf
- Input/Output with gets and puts
- Other String functions in the standard Library
- strcat, strcpy, strcmp, strlen, strchr, strstr, strtok
- Character related functions
- isalpha, isdigit, islower, isupper, toupper, tolower, …
-
Midterm I - Week 7 Exam
-
Week 8: Struct & Unions– Chapter 10
Learning Objectives:
- User-defined structure types
- Structure type data as input and output parameter
- Functions whose result values are structured
- Union Type
-
Week 9: Recursion - Chapter 9
Learning Objectives:
- Introducing Recursive Functions
- Format of recursive Functions
- Tracing Recursive Functions
- Examples
- Tracing using Recursive Trees
-
-
-
-
-
-