T. Andrew Yang

Email: yang@uhcl.edu

Web page:  http://cse.uhcl.edu/yang/

Tel.: (281) 283-3835 

Last updated:

 

7/6/2018: online evaluation link added

6/4/2018: first posted

CSCI 1320-01

C Programming

Summer 2018  (6/4 7/28)

·        Important Information:

o   (Required) Join the discussion group for class-related announcements and discussions: https://groups.google.com/d/forum/csci1320summer2018

Class Notes, Topics & Schedule

- Print out the class notes for the day and bring them to the class.

Assignments & Projects

TA Office Hours

Professor Office Hours


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:

  1. Design, compile and execute C programs.
  2. Design and develop solutions to simple programming problems using C language.
  3. Use good programing practices in C, including pseudo code, flow charts and testing.
  4. Clearly document C code using comments and pseudo code.
  5. Write programs that demonstrate an understanding of basic data type.
  6. Use control and decision structures and loops in the design and implementation of C programs.
  7. Develop programs that use arrays.
  8. Develop programs that use structures.
  9. Develop programs that use pointers.
  10. 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

http://blog.curriculet.com/wp-content/uploads/Blooms-Taxonomy.png


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