University of Delaware

CISC 105 - General Computer Science

C Programming

  1. Course Overview

    This course is the introductory computer programming course for non-CIS majors, and those considering a CIS major but who are not ready for CISC 181. A primary objective of this course is to teach you how to program. In this course, we will be programming in the C language. This is NOT a course in word processing; this is not a course in learning canned software such as LOTUS. This course assumes NO prior programming knowledge. By the end of this course, you should be familiar with: Principals of software engineering including naming conventions, program structure and methodology. The UNIX operating system including the creation , editing, transfer and printing of files. Design and implementation of small to medium sized programs in C. Compilation, testing, debugging, and execution of these programs.

  2. Texts

  3. Programming Environment and Computer Usage

    The C language is available on a group of composer computers named Copland and Strauss. You will primarily use Strauss for all programming that you do for this course. Strauss is a multiprocessor computer manufactured by Sun Microsystems Inc. running the Solaris UNIX operating system. Access to Strauss is obtained via terminals located at various computing sites on the Newark campus and elsewhere. For more information about these computers and other University computing resources, contact the IT Help Center at 831-6000 or access their website at www.udel.edu/help.

  4. Obtaining an Account - What YOU Must Do NOW

    In order to be able to participate in the laboratory sessions you need to do the following if you do not already have an account on the University systems (Strauss):

    1. Go to one of the computing sites or log on from any terminal at which you can obtain a Strauss window, and take the Electronic Community Citizenship Examination interactively. If you do not already have instructions for taking the exam, you can obtain the instructions for the examination and a copy of the Responsible Computing Manuals from any of the computing sites. You need to take the exam repeatedly until you pass it.

    2. After you pass the Ethics examination, you should then activate your UNIX account by contacting the IT Help Center at 831-6000 or accessing their website at www.udel.edu/help.

  5. Requirements and Grading

    In determining your final grade, the homework, programs, laboratory assignments, midterm and final are all graded on a weighted basis. Check the syllabus for your particular section.

  6. Class Meetings and Attendance

    Each week consists of a lecture and a lab or two lectures and a lab. Check the syllabys for your particular section. You are expected to attend all scheduled course lectures and labs.

  7. Homework, Midterm and Final

    Homework assignments normally consist of pencil-and-paper exercises designed to give you practice in applying information covered in the textbook and lectures. They do not require the use of the computer, although you can often check your answers by testing them on the computer. Homework assignments are handed out at the end of a lecture and are due at the beginning of the next lecture. Currently there are four scheduled homework assignments, roughly one every other week. These homework assignments will cover the following material: variables and expressions, decision making and associated operators, program looping and associated operators, character strings, structures, functions, arrays, and pointers.

    The midterm is given at approximately the middle of the semester. It will be announced by the instructor well in advance.

    The final is scheduled by the University; check the final schedule when it comes out.

    Not all sections require homework and/or a midterm and/or a final. Check the syllabus for your particular section.

  8. Programs

    Programming assignments consist of applying several of the concepts from homework and class lectures towards writing your own computer program that is to be compiled, tested, debugged, and executed on the Strauss computer. Currently there are three scheduled programming assignments. Each assignment will be described in a handout that you will receive from the instructor. Program grades will based on: program design, correct execution with correct and properly formatted output, and proper program style. While working on the program, you may consult with the instructor, TA, classmates, friends, etc., but the actual programming that you hand in MUST be your OWN work (See Section 11 on Academic Dishonesty.)

  9. Laboratory Assignments

    The laboratory assignments will be started ( and in some cases completed) during the scheduled laboratory classes. The assignments will be given out by the instructor at the end of the lecture preceding the lab session. Most labs involve writing or modifying C programs that are then executed on the Strauss computer. Each lab assignment is designed to focus on a particular concept discussed in the text or in the lectures.

  10. Late Submission of Assignments

    All assignments, whether they be a lab assignment or a programming assignment, are due at the end of the lab in which they are assigned in order to receive FULL CREDIT (100%). Do NOT miss class or lab in order to complete an assignment. NO late assignments will be accepted for FULL CREDIT without discussion with the instructor prior to the due date. If you can not reach me, leave a message on my voice mail by calling my office phone number. Late (homework, lab, program) assignments will be penalized by starting out with a maximum credit of 87%. Late assignments will be accepted with penalty up to seven days after its due date. Assignments submitted at any later time without an approved excuse will not be accepted. It is best to E-mail any late assignments directly to the instructor or the TA. That way it will automatically be stamped with a time and date of submittal. The next best method is to hand deliver it directly to the TA’s mailbox with the date and time that it was submitted.

  11. Academic Dishonesty

    For many students this is the first time you will be programming a computer and the first time you will be “debugging” computer programs. Hence, you need to learn what is accepted behavior and what is not accepted behavior. When your program does not work, the first thing to do is to use your book and notes to try and figure out the problem yourself. Only after exhausting all attempts to solve the problem yourself, may you ask for the assistance of a friend or classmate, consultant, TA, or the instructor to help you understand the specific problem. You may also discuss in GENERAL terms the GENERAL approach to solving a programming problem. Once the discussion gets down to specific programming issues such as names and types of variables to use, control structures such as loops, if-then-else statements, you must end any collaboration. Specifically, you may NOT:

    Any evidence of performing any form of academic misconduct will be appropriately handled as stated in the Official Student Handbook of the University of Delaware. If you are in doubt whether or not a behavior is permitted, then ask the Professor beforehand. If you are having difficulty with the course, then see the Professor or TAs for extra help.


If you would like more information, please contact us at CE@mvs.udel.edu or call 302/831-2746.


University of Delaware home page
Copyright (c) University of Delaware, 1995.
Comments, suggestions, or questions about this page may be sent to rugg@udel.edu.