Computer Programming in C
CIS 1057 - Spring 2025
Instructor
Professor Thanh P. Nguyen
Email: [email protected]
Office: SERC 325
Sections
- Section 002
- Lecture: Monday 5:30 PM - 8:00 PM - Wachman 407
- Lab: Wednesday 5:30 PM - 7:20 PM - SERC 206
Announcement & Due Dates
Week 1
- Video: Computer Basics ✅
- Video: Binary Numbers ✅
- Video: Variables ✅
- Video: Arithmetic Expressions ✅
- Video: Printf and Scanf ✅
- Video: Floating Point Numbers (Double)
- Video: Math Functions
- Video: Integer Division and Modulo
Week 2
- Video: Type Conversions and Random Numbers
- Video: Characters and Strings
- Video: Integer Overflow and Unsigned
- Video: Live Coding Evaluation Example: Weeks 1 & 2
- Live Coding Evaluation: Weeks 1 and 2 - January 24th
Office Hours
Professor Thanh
Office hours with Prof. Thanh can be arranged by appointment using Calendly and will be conducted
via Zoom. Office hours are available at the following times:
-
Monday, 2:00 PM - 3:30 PM - SERC 325
-
More times are available by appointment using the Calendly link below.
To schedule an appointment with Prof. Thanh, click here!
Monday, 2:00 PM - 3:30 PM - SERC 325
More times are available by appointment using the Calendly link below.
If the scheduling widget doesn't appear use the following Calendly link: https://calendly.com/thanh-phuoc-nguyen/office-hours
Teaching Assistant
- Moulishka Sawant
- Email: [email protected]
- Office Hours: Weekly on Friday from 2:00 - 3:00 PM via Zoom
Course Syllabus
Course Description
This course introduces students to computer programming using the C language. Students will solve programming problems using procedural programming constructs such as variable assignment, loops, branching structures, and functions. Students will write programs that are testable (using assertions) and maintainable (using good programming style, naming conventions, indentation, and comments). Topics covered also include the general characteristics of computers, techniques of problem solving, and algorithm specification. Students also begin the debugging and testing of computer programs in the C language. Students are also introduced to software engineering practices, including unit testing techniques, debugging techniques, and version control management. NOTE: This course can be used to satisfy the university Core Quantitative Reasoning B (QB) requirement. Although it may be usable towards graduation as a major requirement or university elective, it cannot be used to satisfy any of the university GenEd requirements. See your advisor for further information.
For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.
Course Goals
- By the end of the course, the students will feed comfortable predicting the output of code snippets in the C programing language, as well as writing their own C code to solve problems they have not yet seen.
- The students will gain experience and confidence in their abilities to problem-solve and collaborate on writing computer program with their peers.
Topics
- Variables
- Branches
- Loops
- Arrays
- User-defined Functions
- Structs
- Pointers
- Input/Output
Grading
- Live Coding Evaluations: 30%
- Videos: 15%
- Final Project: 10%
- Midterm 1: 15%
- Midterm 2: 15%
- Final: 15%
The live coding evaluations must be initiated by the student each week during lab period, or at office hours after lab day. The 4 lowest scores for the live coding evaluations will be dropped.
The final exam for this course is common, along with the other sections of CIS 1057. For those students registered with the DRS, you may register beforehand to take your exam in their facilities.
Exam Dates
- Midterm 1: February 12th - SERC 206
- Midterm 2: March 26th - SERC 206
- Final: TBA - Wachman 407
Relevant University Policies for this course
Grading Scale
A Range | B Range | C Range | D Range | F Range |
---|---|---|---|---|
A: 94-100 | B+: 87-89 | C+: 77-79 | D+: 67-69 | F: 0-59 |
A-: 90-93 | B: 84-86 | C: 74-76 | D: 64-66 | |
B-: 80-83 | C-: 70-73 | D-: 60-63 |
Attendance and Your Health
We continue to meet the changing circumstances of the COVID- 19 pandemic with flexibility and by working together as a community. To achieve course learning goals, students must attend and participate in classes, according to the course requirements. However, if you feel unwell or if you are under quarantine or in isolation because you have been exposed to the virus or tested positive for it, you should not come to campus or attend in-person classes or activities. It is the student’s responsibility to contact me to create a plan for participation and engagement in the course as soon as you are able to do so, and to make a plan to complete all assignments in a timely fashion when illness delays your completion.
Technology specifications
This course requires the use of Canvas, including access to materials and assignment submission. On-campus computer labs have resumed normal operations and are available for student use. Limited resources are available for students who do not have the technology they need for class. Students with educational technology needs, including no computer or camera or insufficient Wifi-access, should submit a Student Technology Assistance Application located in TUPortal and linked from the Dean of Students Support and Resources webpage. The university will endeavor to meet needs, such as with a long-term loan of a laptop or Mifi device, a refurbished computer, or subsidized internet access. Internet Essentials from Comcast provides the option to purchase a computer for $150 and high-speed Internet service for $9.95 a month, plus tax. The Emergency Broadband Benefit (EBB) is available to purchase Xfinity, Verizon, T-Mobile, and other internet services. Qualified households can receive a temporary monthly credit of up to $50/month toward their Internet service and leased Internet equipment until the program's funding runs out.
Student Support Services
The following academic support services are available to students:
- Student Success Center
- University Libraries
- Undergraduate Research Support
- Career Center
- Tuttleman Counseling Services
- Disability Resources and Services
If you are experiencing food insecurity or financial struggles, Temple provides resources and support. Notably, the Temple University Cherry Pantry and the Temple University Emergency Student Aid Program are in operation as well as a variety of resources from the Division of Student Affairs.
Student with Disabilities
Please bear in mind that COVID-19 may result in a need for new or additional accommodations.
Any student who has a need for accommodations based on the impact of a documented disability or medical condition should contact Disability Resources and Services (DRS) located in the Howard Gittis Student Center South, 4th Floor at [email protected] or 215-204-1280 to request accommodations and learn more about the resources available to you. If you have a DRS accommodation letter to share with me, or you would like to discuss your accommodations, please contact me as soon as practical. I will work with you and with DRS to coordinate reasonable accommodations for all students with documented disabilities. All discussions related to your accommodations will be confidential.
Expectations for Class Conduct
The best way to maintain a safe and focused learning environment is for everyone to get vaccinated. We all need to follow the university guidance on masking as well. For your general health and well-being, hand washing and monitoring your health is still highly recommended. It is also important to foster a respectful and productive learning environment that includes all students in our diverse community of learners. Our differences, some of which are outlined in the University's nondiscrimination statement, will add richness to this learning experience. Therefore, all opinions and experiences, no matter how different or controversial they may be perceived, must be respected in the tolerant spirit of academic discourse. Treat your classmates and instructor with respect in all communication, class activities, and meetings. You are encouraged to comment, question, or critique an idea but you are not to attack an individual. Please consider that sarcasm, humor and slang can be misconstrued in online interactions and generate unintended disruptions. Profanity should be avoided as should the use of all capital letters when composing responses in discussion threads, which can be construed as “shouting” online. Remember to be careful with your own and others’ privacy. In general, have your behavior mirror how you would like to be treated by others.
Statement on recording and distribution of recordings of class sessions
Any recordings permitted in this class can only be used for the student’s personal educational use. Students are not permitted to copy, publish, or redistribute audio or video recordings of any portion of the class session to individuals who are not students in the course or academic program without the express permission of the faculty member and of any students who are recorded. Distribution without permission may be a violation of educational privacy law, known as FERPA as well as certain copyright laws. Any recordings made by the instructor or university of this course are the property of Temple University.
Academic Freedom
Freedom to teach and freedom to learn are inseparable facets of academic freedom. The university has adopted a Policy on Student and Faculty Academic Rights and Responsibilities (links to an external site.). http://policies.temple.edu/PDF/99.pdf
Academic Honesty
According to the University Student Code of Conduct, students must not commit, attempt to commit, aid, encourage, facilitate, or solicit the commission of academic dishonesty and impropriety including plagiarism, academic cheating, and selling lecture notes or other information provided by an instructor without the instructor’s authorization. Violations may result in failing the assignment and/or failing the course, and/or other sanctions as enumerated in the University Code of Conduct (Links to an external site.).