| 
   CSCI 1320-01 
  C
  Programming 
  Summer 2018 
  (6/4 – 7/28) 
  
  
   
   
  Time
  & Classroom 
  Tues.
  & Thur., 12:00pm – 2:50pm (Delta
  203) 
  Course Description:
  Programming techniques with the C programming language, emphasis on modular
  design, data abstraction and encapsulation using ANSI C. Use of all features
  of C including arrays, pointers, structures, prototypes, separate compilation
  and the C-preprocessor. Development of generic functions and study of
  portability issues. 
  Course Objectives: The
  primary objectives of this class include introduction of structured
  programming as part of the software development life cycle, and understanding
  and practicing basic C programming components (especially looping, arrays,
  and functions). Students are expected to become an efficient C programmer
  after having successfully completed this class; therefore, hands-on
  programming skills are emphasized in this class. 
   
  Learning Outcome:
  
   - Design, compile and
       execute C programs. 
 
   - Design and develop
       solutions to simple programming problems using C language. 
 
   - Use good programing
       practices in C, including pseudo code, flow charts and testing. 
 
   - Clearly document C
       code using comments and pseudo code. 
 
   - Write programs that
       demonstrate an understanding of basic data type. 
 
   - Use control and decision
       structures and loops in the design and implementation of C programs. 
 
   - Develop programs
       that use arrays. 
 
   - Develop programs
       that use structures. 
 
   - Develop programs
       that use pointers. 
 
   - Write modular
       programs and pass parameters to/between functions and procedures. 
 
   
  Class Format: Lectures
  are combined with discussions and, if applicable, student presentations and
  discussions of advanced topics. Students are expected to be active participants,
  by studying the relevant chapters and/or research papers, and participating
  at in-class discussions. 
  A note about Bloom's Taxonomy
  and your learning … 
    
  
   
   
  Instructor:
  Dr. T. Andrew Yang 
  
   
    | 
     (office) Delta 174 
     | 
    
   
    | 
     (phone#) (281)
    283-3835 (Please leave a message if not available.)  
    NOTE:
    If the suite office (D161) is locked,
    you may use the phone outside the office to call me (by entering the
    extension 3835).  
     | 
    
   
    | 
     (email address) yang@uhcl.edu  
    Important
    notes:  
    Emails
    without a subject line or a signature will be considered as potentially
    malicious and be discarded.
    Here is a sample subject line: "CSCI 1320 assignment #1, question
    3". 
    Although
    email messages tend to be informal, please check the grammar and spelling
    of your messages to ensure their legibility.  
     | 
    
   
    | 
     (Web site) 
    http://cse.uhcl.edu/yang 
    NOTE: Find the assignments and/or projects at the Assignments & Projects page. 
     | 
    
   
    | 
     Office Hours : See http://cse.uhcl.edu/yang/teaching/officeHours.htm
     
    NOTE: In addition, you are highly encouraged to send your
    questions to me by e-mails (yang@uhcl.edu).
    Try to provide sufficient details in your email message, such as the
    problem(s) you have encountered, the solution(s) you have tried, and the
    outcome you have got from these solution(s). 
     | 
    
   
  Teaching assistant info and office hours: 
    
  TA
  -  Sree Keerthi Vuchuru Kotamma, VuchuruKoTamS1338@uhcl.edu
   
  Office Hours – 
  MONDAY           
  9AM-12PM 
  TUESDAY           
  9AM-11AM & 1PM-3PM 
  WEDNESDAY      9AM-12PM 
  THURSDAY        
  9AM-11AM & 1PM-3PM 
   
   
  Location –Delta 2nd floor PC
  lab 
  Note: Contact the instructor (yang@uhcl.edu)
  immediately if you have any problem with the TA or the office hours. 
    
  
   
   
  Required Text: 
  Behrouz Forouzan and Richard F. Gilberg. Computer
  Science: A Structured Programming Approach Using C (3rd Edition). Cengage
  Learning. 2006. ISBN-10: 0534491324; ISBN-13: 978-0534491321.  
  + Instructor's handouts in the class and/or on the Web 
  
  C
  Programming Resources 
  ·       
  C Programming Tutorials: https://www.tutorialspoint.com/cprogramming/index.htm 
  ·       
  C standard libraries: https://www.tutorialspoint.com/c_standard_library/index.htm
   
  Topics
  and Notes 
  NOTE: The following schedule will
  be adhered to as closely as possible, although changes are probable. Always
  check with your instructor if you are not sure what would be covered next
  week. 
  
   
    | 
     week
    (dates) 
     | 
    
     Topics & Slides (Book:
    Chapters) 
     | 
    
     Due
    Dates 
     | 
    
   
    | 
     1
    (6/5, 7) 
     | 
    
     -       
    Syllabus 
    -       
    Introduction to Computers &
    Developing a C program (Ch. 1) 
    -       
    Introduction
    to the C Language (Ch. 2) 
     | 
     | 
    
   
    | 
     2
    (6/12, 14) 
     | 
    
     -       
    Expressions (Ch. 3) 
    -       
    Functions, part one (Ch. 4) 
     | 
    
       
    Lab 1 (6/14) 
     | 
    
   
    | 
     3
    (6/19, 21) 
     | 
    
     -       
    Functions and Parameter passing 
    -       
    Selection
    (Making Decisions, Ch. 5) 
     | 
    
       
    Lab 2 (6/21) 
     | 
    
   
    | 
     4
    (6/26, 28) 
     | 
    
     -       
    Design tools:
    pseudocodes, flowcharts 
    A
    video tutorial on
    Pseudocodes/flowcharts 
    Review
    for exam 
     | 
    
       
    Lab 3 (6/28) 
     | 
    
   
    | 
     5
    (7/3, 5) 
     | 
    
     Exam  
    -       
    Repetitions/Looping/Iterations 
    -       
    Looping exercises 
     | 
    
     Midterm Exam (7/3) 
      
    Lab 4 (7/5) 
     | 
    
   
    | 
     6
    (7/10, 12) 
     | 
    
     -       
    Arrays 
    -       
    Pointers 
     | 
    
       
    Lab 5 (7/12) 
     | 
    
   
    | 
     7
    (7/17, 19) 
     | 
    
     In-class lab  
    -       
    Structures 
     | 
    
     In-class lab (7/17) 
    Lab 6 (7/19) 
     | 
    
   
    | 
     8
    (7/24, 26) 
     | 
    
     -       
    Strings 
    Final exam 
    -       
    Take your online evaluation at https://apps.uhcl.edu/OnlineEvals
    (between 7/7 and 7/28) 
     | 
    
       
    Final exam (7/26) 
     | 
    
   
    
  
   
   
  Evaluation: 
  
  
   
    | 
     category 
     | 
    
     Percentage  
     | 
    
   
    | 
     Take-home labs (top 5
    out of the 6 labs, 5% each X 5) 
     | 
    
     25% 
     | 
    
   
    | 
     Midterm Exam (closed
    book) 
     | 
    
     25% 
     | 
    
   
    | 
     In-class lab 
     | 
    
     10% 
     | 
    
   
    | 
     Final exam (open book) 
     | 
    
     35% 
     | 
    
   
    | 
     Participation 
     | 
    
     5%  
     | 
    
   
    | 
     Total: 
     | 
    
     100%  
     | 
    
   
   
  ++ Attendance Policy: You are expected
  to attend all classes. There will be no penalty for a person’s first two
  absences without documented excuse. 1% will be taken for each of the
  absences after the first two absences without documented excuses. Note: Being tardy is no excuse when a
  person is found to be absent from the class.  
  Note: If you ever miss a class, it is your responsibility to get
  hold of whatever may have been discussed in the class. 
  +++ Class Participation:
  Participating in the class is
  expected. You should ask or answer questions during the in-class or online
  discussions. 
  Grading Scale:  
  The
  accumulated points from all the categories determine a person's final grade. There
  will be no extra-credit projects. 
  
  
   
    | 
     Percentile 
     | 
    
     Grade 
     | 
    
       
     | 
    
     Percentile 
     | 
    
     Grade 
     | 
    
   
    | 
     90% or above 
     | 
    
     A 
     | 
    
       
     | 
    
     70% - 73% 
     | 
    
     C 
     | 
    
   
    | 
     87% - 89% 
     | 
    
     A- 
     | 
    
       
     | 
    
     67% - 69% 
     | 
    
     C- 
     | 
    
   
    | 
     84% - 86% 
     | 
    
     B+ 
     | 
    
       
     | 
    
     64% - 66% 
     | 
    
     D+ 
     | 
    
   
    | 
     80% - 83% 
     | 
    
     B 
     | 
    
       
     | 
    
     60% - 63% 
     | 
    
     D 
     | 
    
   
    | 
     77% - 79% 
     | 
    
     B- 
     | 
    
       
     | 
    
     57% - 59% 
     | 
    
     D- 
     | 
    
   
    | 
     74% - 76% 
     | 
    
     C+ 
     | 
    
       
     | 
    
     Less than 57% 
     | 
    
     F 
     | 
    
   
   
    
    
  Tests & Exams: 
  Both
  analytic and synthetic abilities are emphasized. Being able to apply the learned
  knowledge toward problem solving is also highly emphasized in the
  tests.  
  Unless
  due to unexpected, documented emergency, no make-up exams will be given. No make-up exams will be granted once the exams have been
  corrected and returned to the class. 
  Assignments
  and Late Penalty: 
  Assignments
  and projects will be posted at the class web site. Assignments &
  projects are due before the beginning of the class on the due day. See Topics and Notes for the due dates.  
   
  Points will be deducted from late assignments: 20% for the first 24
  hours after the due time, 40% for the next 24 hours, 70% for the third 24
  hours, and 100% after that. No extension will be granted except for
  documented emergency. Starting to work on the assignments as early as
  possible is always the best strategy. 
    
  Assignments Guidelines: 
  a. Identification page: All assignments must have your
  name, and course name/number/section number (e.g., CSCI 1320-02) at the top
  of the first page. 
  b. Proper stapling: Staple all the pages together at
  the top-left corner. NOTE: Do not use paper clips. 
  c.
  Order ! Order! Arrange the solutions following the sequence of the
  questions. Write the question number at the top-right corner of each page. 
  d. Word processing: It is required that you type your
  reports (e.g., print them using a printer). Use a word processor and
  appropriate typesetting and drawing tools to do the assignments. Spell-check
  the whole document before printing it. You may lose points due to spelling or
  grammatical errors.  
  Projects: 
  The
  projects will involve the design and implementation of encryption/decryption
  algorithms and/or application of the algorithms to real-world problems.
  Students are expected to employ the theories and techniques learned in the class
  to design the system.  
  Details
  of the projects will be later made available at Assignments
  & Projects.  
  NOTE:
  Unless otherwise
  specified, all assignments and projects are individual work. Students should take caution not to
  violate the academic
  honesty policies. Check out the details at this
  link. 
  
   
   
  Instructor's Notes: 
  
   - Important: If you think you have lost some
       points due to grading errors, make sure you approach the instructor within
       a week after the assignment, project, or test has been returned to you.
       
 
   
  
   - To get the most out
       of this class, you need to read the textbooks and spend time using
       computers regularly. Be prepared for a class by previewing the material
       to be covered in that class and participate in discussions and
       problem-solving exercises, if applicable, in the class.
 
   
  
   - Understanding what are covered in classes and taking
       notes are essential for successfully passing the exams. 
 
   
  
  
   
    | 
     Related Links: 
    ·       
    UHCL
    General Program Requirements: http://www.uhcl.edu/XDR/Render/catalog/archives/125/06/ 
      
    ·       
    Withdrawals,
    Appeals, GPA, Repeated Courses, and the 6 Drop Rule: http://www.uhcl.edu/XDR/Render/catalog/archives/125/06/%23A0110#A0110 
      
    ·       
    ASSESSMENT
    FOR ACCREDITATION: 
    The School of Science and Computer
    Engineering may use assessment tools in this course and other courses for
    curriculum evaluation.  Educational assessment is defined as
    the systematic collection, interpretation, and use of information about
    student characteristics, educational environments, learning outcomes, and
    client satisfaction to improve program effectiveness, student performance,
    and professional success. This assessment will be related to the learning
    objectives for each course and individual student performance will be
    disaggregated relative to these objectives. 
    This disaggregated analysis will not impact student grades, but will
    provide faculty with detailed information that will be used to improve
    courses, curriculum, and student performance. 
    ·       
     UHCL Disability Policy: 
    "The
    University of Houston System complies with Section 504 of the
    Rehabilitation Act of 1973 and the Americans with Disabilities Act of 1990,
    pertaining to the provision of reasonable academic adjustments/auxiliary
    aids for students with a disability. In accordance with Section 504 and ADA
    guidelines, each University within the System strives to provide reasonable
    academic adjustments/auxiliary aids to students who request and require
    them. If you believe that you have a disability requiring an academic
    adjustments/auxiliary aid, please contact your University’s student
    disability services center." 
     | 
    
   
  Go to the Index 
  
   
   
    
   |