Syllabus. ICS103: Computer Programming in C 2017 / 2018 First Semester (Term 171) INSTRUCTOR Office Phone Address Office Hours

Similar documents
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

CS 241 Data Organization using C

C Programming for Engineers Introduction

CS 241 Data Organization. August 21, 2018

You must pass the final exam to pass the course.

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics

CS Computer Science I

BIO 139 HUMAN ANATOMY AND PHYSIOLOGY II LABORATORY SYLLABUS

Rochester Institute of Technology Golisano College of Computing and Information Sciences Department of Information Sciences and Technologies

BIO 139 HUMAN ANATOMY AND PHYSIOLOGY II LABORATORY SYLLABUS

COURSE SYLLABUS ****************************************************************************** YEAR COURSE OFFERED: 2015

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division. SECOND SEMESTER Course Handout Part II

CHEM 31A (90285): General Chemistry Fall 2013

EECE.2160: ECE Application Programming Spring 2019

CSCE 441 Computer Graphics Fall 2018

ESET 369 Embedded Systems Software, Fall 2017

Course Title: Computer Networking 2. Course Section: CNS (Winter 2018) FORMAT: Face to Face

MGMT 4336 Networks & Data Communication Section D10

CHEM 31A (90366): General Chemistry Fall 2011

Fundamentals of Computer Science CSCI 136 Syllabus Fall 2018

BIO 139 HUMAN ANATOMY AND PHYSIOLOGY II LABORATORY SYLLABUS

IT 341 Fall 2017 Syllabus. Department of Information Sciences and Technology Volgenau School of Engineering George Mason University

INFS 2150 (Section A) Fall 2018

Course: Honors AP Computer Science Instructor: Mr. Jason A. Townsend

CIS* Programming

Oklahoma State University Institute of Technology Face-to-Face Common Syllabus Fall 2017

CS 200, Section 1, Programming I, Fall 2017 College of Arts & Sciences Syllabus

In this course, you need to use Pearson etext. Go to "Pearson etext and Video Notes".

BIO 139 HUMAN ANATOMY AND PHYSIOLOGY II LABORATORY SYLLABUS

TEACHING & ASSESSMENT (T & A) PLAN College of Economics Management and Information Systems Department of Information Systems

Syllabus Revised 08/21/17

CASPER COLLEGE COURSE SYLLABUS MSFT 1600 Managing Microsoft Exchange Server 2003 Semester/Year: Fall 2007

CSCE 206: Structured Programming in C

Course Syllabus - CNT 4703 Design and Implementation of Computer Communication Networks Fall 2011

AE Computer Programming for Aerospace Engineers

Syllabus Revised 08/15/2018

The Linux Command Line: A Complete Introduction, 1 st ed., by William E. Shotts, Jr., No Starch Press, 2012.

In this course, you need to use Pearson etext. Go to "Pearson etext and Video Notes".

ISM 324: Information Systems Security Spring 2014

Cleveland State University

BIO 139 HUMAN ANATOMY AND PHYSIOLOGY II LABORATORY SYLLABUS

CS 110H COMPUTER SCIENCE I HONORS Weisberg Division of Computer Science College of Information Technology & Engineering Marshall University

CENTRAL TEXAS COLLEGE COSC 1315 INTRODUCTION TO COMPUTER PROGRAMMING. Semester Hours Credit: 3 INSTRUCTOR: OFFICE HOURS:

EECE.2160: ECE Application Programming Spring 2017

BOSTON UNIVERSITY Metropolitan College MET CS342 Data Structures with Java Dr. V.Shtern (Fall 2011) Course Syllabus

Updated: 2/14/2017 Page 1 of 6

ESET 349 Microcontroller Architecture, Fall 2018

KING FAHD UNIVERSITY OF PETROLEUM & MINERALS COMPUTER ENGINEERING DEPARTMENT

BIO 139 HUMAN ANATOMY AND PHYSIOLOGY II LABORATORY SYLLABUS

Central Washington University Department of Computer Science Course Syllabus

Syllabus COSC-051-x - Computer Science I Fall Office Hours: Daily hours will be entered on Course calendar (or by appointment)

Module Syllabus. PHILADELPHIA UNIVERSITY Faculty: Information Technology Department: Applied Computer Science

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, PILANI PILANI CAMPUS Instruction Division

Course Title: Network+/Networking Fundamentals. Course Section: CNS-101-I1. FORMAT: Online

Spring 2018 El Camino College E. Ambrosio. Course Syllabus

CISN 340 Data Communication and Networking Fundamentals Fall 2012 (Hybrid)

CSCI 6312 Advanced Internet Programming

CS 3270 Mobile Development for Android Syllabus

TEACHING & ASSESSMENT (T & A) PLAN

The University of Jordan. Accreditation & Quality Assurance Center. COURSE Syllabus

CS/SE 153 Concepts of Compiler Design

WAYLAND BAPTIST UNIVERSITY VIRTUAL CAMPUS SCHOOL OF BUSINESS SYLLABUS

Developing Web Applications and Services Course Syllabus Fall 2015

New York City College of Technology/CUNY Department of Computer Systems Technology. CST2400 Computer System Management and Support 4 hours 3 credits

EE3315 Internet Technology EE3315 Internet Technology Overview Slide 1

Survey of Programming Languages Dr. R. M. Siegfried 407 Science (516) (not for homework submission)

Web Programming Fall 2011

COLLEGE OF DUPAGE CIS 2542 Advanced C++ with Data Structure Applications Course Syllabus

CS 0449 Intro to Systems Software Fall Term: 2181

MWF 9:00-9:50AM & 12:00-12:50PM (ET)

Advanced Programming CMPS 109

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division. SECOND SEMESTER Course Handout Part II

ESET 369 Embedded Systems Software, Spring 2018

CS 375 UNIX System Programming Spring 2014 Syllabus

Syllabus Revised 01/03/2018

When does RDBMS representation make sense When do other representations make sense. Prerequisites: CS 450/550 Database Concepts

Del Mar College Master Course Syllabus. UNIX System Administration Course Number: ITSC1358

CS 211 Programming I for Engineers

Sprint 2017, Sul Ross State University

San José State University Computer Science Department CS49J, Section 3, Programming in Java, Fall 2015

Advanced Client-Side Web Programming CSCI 491/595 Syllabus Fall 2018

programming exercises.

Syllabus of ENPM 691: Secure Programming in C

ISATI 231: Windows Client (4 credits) Spring 2018 Mon, Tue, Wed, Thu, 13:10-14:40, MTB 105

TCOM 663/CFRS Intrusion Detection and Forensics Department of Electrical and Computer Engineering George Mason University Fall, 2010

BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS. ITNW 2313: NETWORKING HARDWARE Online Course Version COMPUTER TECHNOLOGY DEPARTMENT

CS503 Advanced Programming I CS305 Computer Algorithms I

BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS. ITNW 1354: IMPLEMENTING AND SUPPORTING SERVERS Previously ITMC 1341 and then ITMT 1340

CPS352 - DATABASE SYSTEMS. Professor: Russell C. Bjork Spring semester, Office: KOSC 242 x4377

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018

University of Maryland at College Park Department of Geographical Sciences GEOG 477/ GEOG777: Mobile GIS Development

San José State University Department of Computer Science CS-144, Advanced C++ Programming, Section 1, Fall 2017

De La Salle University College of Computer Studies. Course Syllabus

Red Hat Certified Engineer (RH300) 50 Cragwood Rd, Suite 350 South Plainfield, NJ 07080

CSCI 201L Syllabus Principles of Software Development Spring 2018

ECE573 Introduction to Compilers & Translators

Syllabus -- CIS Computer Maintenance / A+ Certification

PC Applications IT102 estart Fall 2014

CoSci 487 SYLLABUS Introduction to Networks

INF 315E Introduction to Databases School of Information Fall 2015

Transcription:

I n f o r m a t i o n a n d C o m p u t e r S c i e n c e D e p a r t m e n t Syllabus ICS103: Computer Programming in C 2017 / 2018 First Semester (Term 171) Course Website: Blackboard CE 8 (WebCT) http://webcourses.kfupm.edu.sa/ Class Times and Venues: Registrar Website http://regweb.kfupm.edu.sa/ List of lecture instructors: INSTRUCTOR Office Phone E-mail Address Office Hours Dr. Louai Al-Awami 22/317 1948 louai@kfupm.edu.sa M:11:00-12:00 and W:10:00-12, or by appointment Dr. Mohamed Balah 22/324-1 1390 mbalah@kfupm.edu.sa UTW 9:00-10:00 and by appointment Dr. Othman Baroudi 22-144 4283 ubaroudi@kfupm.edu.sa MW: 11:00-11:55 AM and by appointment Mr. Muhammad Aslam 23/054 3980 mwaslam@kfupm.edu.sa MW 8:00-09:00 and by appointment Dr. Md Rafiul Hassan 22/318 7330 mrhassan@kfupm.edu.sa UT: 3.30PM to 5.00PM Dr. Tareq El-Bassuny 22-137-3 1967 helmy@kfupm.edu.sa MW: 2:00-3:30 PM and by appointment Dr. El-Sayed El-Alfy 22/108 1930 alfy@kfupm.edu.sa MW: 10:00-11:00AM and by appointment Dr. C Kamal 23/082 2082 cskamel@kfupm.edu.sa U,T: 11:00 am 13:00 and by appointment Dr. Ayman Hroub 59/1023 8984 aymanh@kfupm.edu.sa Monday (2:00-3:00) pm or by appointment Dr. Ali Al-Suwaiyan 22/143 N/A alisuwaiyan@kfupm.edu.sa Contact this instructor for more information Dr. Muhamed Mudawar 22/328 4642 mudawar@kfupm.edu.sa UTR 9:00 11:00 AM Dr. Samer Arafat 22/329 7718 arafat@kfupm.edu.sa UT 1:30 3:00 pm, or by appointment Course Catalog Description Overview of computer hardware and software; Programming in C with emphasis on modular and structured programming technique; Problem solving and algorithm development; Simple engineering and scientific problems. Note: ICS 103 cannot be taken by ICS/SWE students. Co-requisites: MATH 101 or MATH 132 Course Objectives Provide engineering students with basic knowledge of programming in C and problem solving. Course Learning Outcomes Upon completion of this course, each student should be able to: 1. Understand and find the output of simple C programs that incorporate different types of variables, expressions (arithmetic and logical), selection, and iteration. 2. Understand and find the output of more complex C programs containing arrays and invoking (calling) functions having input and output arguments using pointers. P a g e 1 5

3. Design and implement simple programs using basic syntax of C language such as assignment, expressions, selection, and iterations. 4. Practice modular programming by developing more complex C programs made of functions passing data between them using arrays, input, and output arguments. Lab Learning Outcomes Upon completion of the lab, each student should be able to: 1. Use effectively a software development tool for C programming. 2. Comprehend theoretical concepts through practical examples. 3. Strengthen programming capabilities to construct software systems of varying complexity. 4. Enhance teamwork and communication skills. 5. Engage in continuing professional development. Required Material Textbook: Problem Solving and Program Design in C, 8 th Ed., by Jeri R. Hanly & Elliot B. Koffman. Prentice Hall, 2016. Lecture Slides. Lab Documents. Other Recommended References Problem Solving and Program Design in C, 8 th Ed., by Jeri R. Hanly & Elliot B. Koffman. Prentice Hall, 2016. C Programming: A Modern Approach, 2/e, by K. N. King, 2008. C Programming Language, 2/e, by Brian W. Kernighan & Dennis M. Ritchie. Prentice Hall, 1988. C for Engineers and Scientists, by Harry H. Cheng. McGraw Hill, 2009. C How to Program, 5/e, By Deitel & Deitel, 2007. Engineering Problem Solving with C, 3/e, by Delores M. Etter, 2005. Assessment Plan Evaluation Method Weight Lab Work: Lab Tests (15%), Lab work (2.5%), Project (2.5%) 20 % Quizzes (5 quizzes, 4% each) 20 % Homework Assignments 5 % Midterm Exam Saturday November 11 (10:00 AM 12:00 noon) Location: Building 54, Exhibition Center Material: from the first set of lecture slides up to (and including) all of repetition: Chapters 1, 2, 4, and 5. 25 % Final Exam: 08:00 AM, Sunday, January 07, 2018 Location: To be announced by the Registrar Material: Comprehensive 30 % P a g e 2 5

Course Weekly Schedule Lecture Lab (Check Lab Syllabus & Regulations document for details) Week# Dates Topic Notes Topic 1 Sept. 17-20 Overview of Computers and Programming 1.1-1.5 Overview of Computers and Programming 1.1-1.5 No Lab Sunday 24 Sept NATIONAL HOLIDAY 2 Sept. 25-28 C language Elements Variable Declarations and Data Types The const modifier Executable Statements General Form of a C program 2.1 2.2 Lab 00: Introduction of the Lab; Use of IDE Environment to Write, Compile and Run C Programs 2.3 2.4 3 Oct. 1-5 (Normal Sunday classes on Oct. 7) Arithmetic Expressions Formatting Numbers in Program Output The e-format specifier Common Programming Errors Single and two way selection, Compound 2.5 2.6 2.8 4.1-4.2 Quiz # 1 Lab 01: Data Types and Console I/O 4 Oct. 8-12 Single and two way selection, Compound Multiway selection, Nested-if and switch 4.3-4.6 4.7-4.9 HW # 1 Lab 02: Expressions 5 Oct. 15-19 while-loop, Compound assignment operators for loop, increment and decrement operators, conditional loops 5.1-5.3 5.4-5.5 Quiz # 2 Lab Test 1 (Labs 1,2) 3% Lab 03: Selection 6 Oct. 22-26 Sentinel-controlled loops, nested loops, dowhile loop Common Programming Errors Building Programs from Existing Information Library Functions Top-Down design 5.6-5.8 5.12 HW # 1 HW # 2 3.1 3.2 3.3 Lab 04: Repetition-1 7 8 Oct. 29- Nov. 2 Nov. 5-9 Functions without Arguments Functions with Input Arguments Pointers and Modular Programming 3.4 3.5 3.7 6.1 Pointers to files]-6.3 Pointers and Modular Programming 6.4-6.8 Quiz # 3 HW # 2 HW #3 Lab Test 2 (Labs 3,4) 3% Lab 05: Repetition-2 Lab 06: Functions without and with Input Parameters Project Announcement P a g e 3 5

9 Saturday, Nov.11 Nov. 12-16 Midterm Exam (10 AM) Data Files 11.1 formatting] 1D Arrays 7.1-7.3 Lab Test 3 (Labs 5,6) 3% Lab 07: Functions with Output Parameters using Pointers 10 Nov. 19-23 Using Array Elements as Function Arguments const array parameters. Partial Arrays [Excluding Stacks] Linear search, Selection sort, Parallel Arrays Enumerated Types] 7.4-7.5 7.6, 7.7, 7.11 Quiz # 4 Lab 08: Data Files 11 Nov. 26-31 2D-Arrays 3D-Arrays] More on Arrays 7.8 7.9 HW # 3 HW # 4 Lab Test 4 (Labs 7,8) 3% Lab 09: 1-D Arrays (How to Read & Write Elements in 1-D Array) Array Processing Illustrated 12 Dec. 3-7 Passing strings to functions, Passing strings using char pointers. Standard String functions. 8.1-8.2 Exclude strncpy and substrings] Quiz # 5 Lab 10: 1-D Arrays (How to Use 1- D Array with Functions) 13 Dec. 10-15 8.3 strncat] 8.4 HW # 4 Lab 11: 2-D Arrays 14 Dec. 17-22 Lab Test 5 (Labs 9,10,11) 3% Lab 12: Review and Problem Solving Project Submission 15 Dec. 24-28 Sunday, January 7 Course Policies Review and Problem Solving Final Exam (8 AM) Minimum Passing Grade: The minimum passing grade in the ICS 103 course is set to a total of 50/100. Total scores less than 50/100 will result in an F grade. Labs: Lectures and labs are integrated and they complement each other. To pass this course, the student must pass the lab-component of the course. Course Website & Participation: Students are required to periodically check the course website and download course material as needed. Several resources will be posted through the website as well. Keys to quizzes, lab assessments and exams are generally discussed during class as time permits but solutions will be posted. Keys to lab tasks will not be posted. The Blackboard will be used for communication and interaction, posting and submitting assignments, posting grades, posting sample exams, etc. It is expected that you get benefit of the discussion board by raising questions or answering questions put by others. Attendance: Regular attendance is a university requirement; hence, attendance will be checked at the beginning of each lecture and lab. Late arrivals will disrupt the class session. Hence, two late attendances (more than 10 minutes late) will be considered as one absence. Missing more than 6 unexcused lectures or 3 unexcused lab will result in a DN grade without prior warning. To avoid being considered as absent, an official excuse must be shown no later than one week of returning to classes. No makeup of homework, quizzes, lab assessments, lab project or exams will be given. Re-grading policy: If you have a complaint about any of your grades, discuss it with the instructor no later than a week of distributing the grades (except for the final). Only legitimate concerns on grading should be discussed. Office Hours: Students are encouraged to use the office hours to clarify any part of the material that is not clear; however, the instructor will not solve assigned homework problems. P a g e 4 5

Courtesy: Students are expected to be courteous toward the instructor and their classmates throughout the duration of this course. Talking while someone else is speaking will not be tolerated. Furthermore, all cell phones must be turned off during classes and exams. In addition, students are expected to be in class on time. More importantly, you are not allowed to leave the class unless it is an urgent matter. Academic honesty Students are expected to abide by all the university regulations on academic honesty. Cheating will be severely penalized. Here are the main ICS 103 regulations related to cheating and plagiarism: Cheating in a homework assignment will result in getting a zero grade for that homework for all students involved. Cheating in a quiz will result in getting a zero grade in that quiz. Cheating in the lab project will result in zero grade in the lab project for all student groups involved. Cheating in an exam will result in a zero grade in that exam for all students involved. The students will also be reported to the Students Affairs Committee for further punishments. NOTE: It is the student s responsibility to make sure his work in homework and lab project is not copied; the excuse that one does not know how his work got copied will not be accepted. The excuse that a cheating offence was a collaboration will also not be accepted. Each student is required to do each homework assignment alone. Each lab project group is required to do the lab project alone. Good Luck P a g e 5 5