CO 71: Computer Programming in C Spring Semester, 1999 Instructor: Elliot Koffman Office: Computer Building, Room 311 Hours: Tu-Th 1-2:30 Temple phone: 204-1913 eMail: koffman@cis.temple.edu Web page: http://joda.cis.temple.edu/~koffman Prerequisites: First-level core math course Description: Introduces students to computers and computer programming. Topics covered include the general characteristics of computers, techniques of problem solving and algorithm specifications, and the debugging and testing of computer programs in C. No credit for students who have taken CIS59, CIS61, CIS67, or CIS81. This is a second level math core course. Textbook: Problem Solving and Program Design in C, 3rd Edition, by Hanly and Koffman, Addison-Wesley, 1999 Labs: Each student will be assigned to a laboratory section. Attendance in the laboratory is required. There will be two kinds of laboratory assignments: 1. Laboratory exercises involved with testing or modifying programs that will be supplied to you. You should be able to complete most of these exercises during the laboratory period for which they are assigned provided you familiarize yourself with the assignment before the laboratory period and do some preparation before lab. 2. Programs written to solve programming projects assigned from the textbook. You will probably need to spend several hours working on these programs outside of the regular laboratory period. You can consult with other students on the assignments but each person should write his/her own programs. Put the names of any students you consult with on your program when you hand it in. It is very important that you follow the programming conventions and styles described in class and the textbook. Also, make sure that you demonstrate that your program works. No credit will be granted for late labs. Grading: 20% of your final grade will depend on your laboratory grade and 80% will depend on your exams. There will be approximately 4 exams including a final examination. You must receive a passing grade in lab to pass the course. Weeks Topics Text Chapter 1-2 Intro. to computing computer history, overview of hardware, overview of software, translating and linking a program, introduction to UNIX operating system and editor. Chap. 1 3-4 Problem solving, intro. to C and data types problem solving and programming, software development method, overview of C, declaration part of a program, executable part including input, output, and assignment statements Chap. 2 4-5 Top-down design and modularizing a program, structure charts, libraries and library functions, user-defined functions with no arguments and input arguments. Chap. 3 6-7 Control Structures, Decisions, if statement, switch statement logical expressions and operators, tracing an algorithm, nested if statements Chap. 4 8-9 Repetition and loops, Repetition in programs, accumulating a sum, counting loops, conditional loops, do while and for loops, debugging programs with loops Chap. 5 10 more on data types, data type char chap 7 11-13 Arrays Subscripts, array arguments, searching and sorting, Chap. 8 14 Modular programming functions with output parameters scope of identifiers, debugging a program with functions Chap. 6