CEN 180 C/C++ Language Introduction

This course introduces object-oriented programming using electronics and computer technology related examples. Topics include algorithms, arrays, documentation, flowcharting, input/output functions, loops, pointers, structures, testing and debugging, and programming techniques.

Credits

4

Prerequisite

Prerequisite: ELC 125 or ELC 125 concurrent

See Course Syllabus

Course Number and Title:

CEN 180 C/C++ Language Introduction

Campus Location

  • Dover
  • Georgetown
  • Stanton

Prerequisites

Prerequisite: ELC 125 or ELC 125 concurrent

Course Credits and Hours

4 credit(s)

3 lecture hours/week

2 lab hours/week

Course Description

This course introduces object-oriented programming using electronics and computer technology related examples. Topics include algorithms, arrays, documentation, flowcharting, input/output functions, loops, pointers, structures, testing and debugging, and programming techniques.

Additional Materials

Storage media for class and lab work, TI-84+ or TI-89 Calculator

Required Text(s)

Obtain current textbook information by viewing the campus bookstore - https://www.dtcc.edu/bookstores online or visit a campus bookstore. Check your course schedule for the course number and section.

Core Course Performance Objectives (CCPOs)

  1. Describe the major software and hardware components and how they are organized in a computer system. (CCC 1, 5; PGC 1)
  2. Describe the object-oriented programming structure, including directives, comment lines, header files, declarations, and the main program. (CCC 1, 2, 5; PGC 1)
  3. Analyze, design, code, and debug programs with loops. (CCC 1, 2, 5; PGC 1, 2, 4)
  4. Analyze, design, code, and debug programs with pointers and arrays. (CCC 1, 2, 5; PGC 1, 2, 4)
  5. Analyze, design, code, and debug programs with conditional execution. (CCC 1, 2, 5; PGC 1, 2, 4)
  6. Analyze, design, code, and debug programs with functions. (CCC 1, 2, 5; PGC 1, 2, 4)
  7. Analyze, design, code, and debug programs with character string input, output, and manipulation. (CCC 1, 2, 5; PGC 1, 2, 4)
  8. Analyze, design, code, and debug programs with search and sort algorithms. (CCC 1, 2, 5; PGC 1, 2, 4)
  9. Analyze, design, code, and debug programs involving file processing with file creation and maintenance. (CCC 1, 2, 5; PGC 1, 2, 4)
  10. Analyze, design, code, and debug programs containing data structures and classes. (CCC 1, 2, 5; PGC 1, 2, 4)

See Core Curriculum Competencies and Program Graduate Competencies at the end of the syllabus. CCPOs are linked to every competency they develop.

Measurable Performance Objectives (MPOs)

Upon completion of this course, the student will:

  1. Describe the major software and hardware components and how they are organized in a computer system.
    1. Identify and describe computer hardware, including input and output devices, and the different sizes and kinds of computers.
    2. Identify and describe the different types of computer software.
    3. Describe the development of programming languages.
    4. Describe the differences among programming languages.
  2. Describe the object-oriented programming structure, including directives, comment lines, header files, declarations, and the main program.
    1. Identify the standard symbols used in flowcharts.
    2. Create flowcharts using structured programming techniques.
    3. Use flowcharts to construct programs using proper syntax and structure for simple in-line programming.
    4. Use comments to clearly describe the purpose of the program code.
    5. Identify appropriate header files and incorporate their use to solve electronic engineering technology problems.
    6. Use self-documenting names to identify the purpose of variables.
    7. Define variables and constants.
    8. Write programs to assign and manipulate values of variables.
    9. Demonstrate the proper use and format of C language commands to accept input and clearly display program results.
  3. Analyze, design, code, and debug programs with loops.
    1. Explain the use and advantages of looping for a given programming task.
    2. Write programs using for, while, and do-while loops to solve electronic engineering technology problems.
    3. Identify and use the most appropriate type of loop for a given programming task.
    4. Write and debug programs involving nested loops.
  4. Analyze, design, code, and debug programs with pointers and arrays.
    1. Explain the use and advantages of arrays for a given programming task.
    2. Write programs using singular and two-dimensional arrays to solve electronic engineering technology problems.
    3. Use pointers to read, input, and manipulate data in singular and two-dimensional arrays.
  5. Analyze, design, code, and debug programs with conditional execution.
    1. Explain the use of conditional execution.
    2. Write programs using if, else, if-else, switch, and case statements to solve electronic engineering technology problems.
    3. Identify and use the most appropriate conditional statement for a given programming task.
  6. Analyze, design, code, and debug programs with functions.
    1. Describe the use and advantages of programming with functions.
    2. Create recursive function calls.
  7. Analyze, design, code, and debug programs with character string input, output, and manipulation.
    1. Write programs using strings to input and output data.
    2. Use pointers to locate position of and insert substrings within strings.
  8. Analyze, design, code, and debug programs with search and sort algorithms.
    1. Describe and use bubble, linear, and shell algorithms to sort data in an object-oriented program.
  9. Analyze, design, code, and debug programs involving file processing with file creation and maintenance.
    1. Create, open, append, truncate, input, and output file data.
    2. Identify and use American Standard Code for Information Interchange (ASCII) and Binary files and distinguish between the appropriate uses of both types.
  10. Analyze, design, code, and debug programs containing data structures and classes.
    1. Use structure definitions in an object-oriented program.
    2. Identify, create, and use structure variables and functions with private and public access to the class as appropriate for a given programming task.
    3. Write programs using nested structures to solve electronic engineering technology problems.

Evaluation Criteria/Policies

The grade will be determined using the Delaware Tech grading system:

90-100 = A
80-89 = B
70-79 = C
0-69 = F
Students should refer to the Catalog/Student Handbook for information on the Academic Standing Policy, the Academic Integrity Policy, Student Rights and Responsibilities, and other policies relevant to their academic progress.

Final Course Grade

Calculated using the following weighted average

Evaluation Measure

Percentage of final grade

Summative: 3-4 Exams (equally weighted)

30%

Summative: 10-15 Laboratory Experiments (equally weighted)

40%

Formative: Homework/Pop Quizzes (equally weighted)

30%

TOTAL

100%

Program Graduate Competencies (PGCs are the competencies every graduate will develop specific to his or her major)

  1. Perform the duties of an entry-level technician using the skills, modern tools, theory, and techniques of the electronics engineering technology.
  2. Apply a knowledge of mathematics, science, engineering, and technology to electronics engineering technology problems that require limited application of principles but extensive practical knowledge.
  3. Conduct, analyze, and interpret experiments using analysis tools and troubleshooting methods.
  4. Identify, analyze and solve narrowly defined electronics engineering technology problems.
  5. Explain the importance of engaging in self-directed continuing professional development.
  6. Demonstrate basic management, organizational, and leadership skills which commit to quality, timeliness and continuous improvement.

Core Curriculum Competencies (CCCs are the competencies every graduate will develop)

  1. Apply clear and effective communication skills.
  2. Use critical thinking to solve problems.
  3. Collaborate to achieve a common goal.
  4. Demonstrate professional and ethical conduct.
  5. Use information literacy for effective vocational and/or academic research.
  6. Apply quantitative reasoning and/or scientific inquiry to solve practical problems.

Students in Need of Accommodations Due to a Disability

We value all individuals and provide an inclusive environment that fosters equity and student success. The College is committed to providing reasonable accommodations for students with disabilities. Students are encouraged to schedule an appointment with the campus Disabilities Support Counselor to request an accommodation needed due to a disability. The College's policy on accommodations for persons with disabilities can be found in the College's Guide to Requesting Academic Accommodations and/or Auxiliary Aids Students may also access the Guide and contact information for Disabilities Support Counselors through the Student Resources web page under Disabilities Support Services, or visit the campus Advising Center.

Minimum Technology Requirements

Minimum technology requirements for online, hybrid, video conferencing and web conferencing courses.