C/C++ Programming I : Fundamental Programming Concepts
CSE-40475
With an emphasis on the syntax, semantics and structured programming style,
this class examines the C and C++ programming languages. Students will learn to create and compile basic programs using C/C++.
Course Highlights:
- Writing and debugging programs
- Preprocessor
- Standard library functions
- Fundamental data types
- Operators
- Flow control statements
- Functions
- Arrays and pointers
- Strings
- Dynamic storage allocation
- Structures
- Classes
- File operations
Course Learning Outcomes:
- Understand basic C and C++ concepts
- Ability to read, write and debug elementary C and C++ code
- Obtain working knowledge of data types, basic operations, portability issues, standard programming practices and style
Software: Students must have access to to program development tools. Free IDE downloads students commonly use for this program include "Visual Studio Community" for Windows, "Xcode" for macOS, and "Code::Blocks" for Linux, Windows, and macOS.
Course Materials: The instructor will provide students with a pdf copy of his custom course reader to be used for the duration of this course. There is no other textbook required for this course.
Course Typically Offered: Online in every quarter.
Prerequisite: CSE-40028 Introduction to Programing or equivalent knowledge experience. Students must have knowledge of basic general programming concepts as taught in any good introductory programming course in any language including constants, variables, operator precedence, arithmetic operations, conditional statements, looping statements, logical thinking, and general problem solving. Students who lack this foundational knowledge MUST take the prerequisite prior to enrolling in this first required course of the program.
Next Step: After completing this course, consider taking CSE-40476 C/C++ Programming II: Dynamic Memory and File I/O Concepts to continue learning.
Contact: For more information about this course, please email infotech@ucsd.edu.
Course Information
Course sessions
Section ID:
Class type:
This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.
Textbooks:
All course materials are included unless otherwise stated.
Policies:
- No refunds after: 9/30/2024
Schedule:
Instructor: Raymond Mitchell, M.S.
Hardware/Software Consultant
Raymond L. Mitchell Jr. owns a hardware/software consulting business. He worked for 30+ years as an electronics design engineer at SPAWAR Systems Center where he designed, built, and programmed hardware and software systems from the logic design, circuit board layout, and mechanical packaging stages through the operating system and application program development phases.
Section ID:
Class type:
This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.
Textbooks:
No textbook required.
Policies:
- No refunds after: 1/13/2025
Schedule:
Instructor: Raymond Mitchell, M.S.
Hardware/Software Consultant
Raymond L. Mitchell Jr. owns a hardware/software consulting business. He worked for 30+ years as an electronics design engineer at SPAWAR Systems Center where he designed, built, and programmed hardware and software systems from the logic design, circuit board layout, and mechanical packaging stages through the operating system and application program development phases.