We may earn an affiliate commission when you visit our partners.
Course image
Petra Bonfert-Taylor and Rémi Sharrock

Inthis course, part of the C Programming with Linux Professional Certificate program,you will learn to use logical statements and arrays in C. Logical statements are used for decision-making with follow-up instructions, based on conditions you define. Arrays are used to store, keep track of, and organize larger amounts of data. You will furthermore implement some fundamental algorithms to search and sort data.

Read more

Inthis course, part of the C Programming with Linux Professional Certificate program,you will learn to use logical statements and arrays in C. Logical statements are used for decision-making with follow-up instructions, based on conditions you define. Arrays are used to store, keep track of, and organize larger amounts of data. You will furthermore implement some fundamental algorithms to search and sort data.

Within moments of this course, you will be coding hands-on in a new browser tool developed specifically for this course, receiving instant feedback on your code. No need to install anything!

Why learn C? Not only is it one of the most stable and popular programming languages in the world, it's also used to power almost all electronic devices. The C programming language represents one of the building blocks of modern computer information technology.

By the end of this course, you will have gained experience with programming concepts that are foundational to any programming language and be one step closer to a career in computer engineering.

This course has received financial support from the Patrick & Lina Drahi Foundation.

Three deals to help you save

What's inside

Learning objectives

  • Use logical conditions to control the flow of a program via branch statements (if-else), repetition (for or while loop) and nesting of these structures
  • Create and modify arrays to store integer and floating point numbers and explain how arrays are organized in memory
  • Create null-terminated arrays of characters to store and modify strings (of characters)
  • Sort and search arrays of numbers and characters using bubble sort, selection sort, linear search and bisection

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Develops logical thinking and problem-solving skills, foundational concepts for computer science
Builds a strong foundation for beginners in computer programming
Suitable for learners interested in computer engineering careers
Offers hands-on coding experience in a specialized browser tool designed for the course
Provides immediate feedback on coding exercises, aiding learning and progress tracking
No software installation required, improving accessibility and ease of use

Save this course

Save C Programming: Language Foundations to your list so you can find it easily later:
Save

Reviews summary

C programming by the book

Learners say this is a great course for beginners who want to learn the fundamentals of C Programming language in a step-by-step manner. If you are new to programming, the detailed lessons will help you build a strong understanding of the foundations of programming.

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in C Programming: Language Foundations with these activities:
Connect with experienced C programmers
Reach out to experienced C programmers to gain valuable insights, advice, and support throughout your learning journey.
Show steps
  • Attend industry events or online forums related to C programming
  • Reach out to C programming professionals on LinkedIn or other social media platforms
  • Ask questions and seek guidance from experienced C programmers
Review the C syntax
Refresh your knowledge of the C syntax to prepare for the course and ensure a solid foundation.
Show steps
  • Read through a C syntax summary
  • Review examples of C code
  • Try writing some simple C programs
Organize your course notes and materials
Stay organized by compiling course notes, handouts, and other materials in one place.
Show steps
  • Gather your course notes, handouts, and other materials
  • Create a system for organizing and storing these materials
  • Review your materials regularly to reinforce your learning
One other activity
Expand to see all activities and additional details
Show all four activities
Read 'C Programming: A Modern Approach' by K.N. King
Expand your knowledge of C programming concepts by reading a comprehensive and well-regarded book that provides a modern perspective on the language.
Show steps
  • Obtain a copy of the book
  • Read through the chapters and make notes
  • Complete the exercises and assignments provided in the book

Career center

Learners who complete C Programming: Language Foundations will develop knowledge and skills that may be useful to these careers:
Software Developer
As a Software Developer, you will be responsible for designing, developing, and maintaining software applications. This course will provide you with a solid foundation in the C programming language, which is essential for building efficient and reliable software. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills are essential for any aspiring Software Developer.
Data Analyst
Data Analysts are responsible for collecting, analyzing, and interpreting data to help businesses make informed decisions. This course will provide you with a strong foundation in data analysis concepts, such as data sorting and searching. You will learn how to use logical statements to filter and organize data, and how to use arrays to store and manage large datasets. These skills will be invaluable in your role as a Data Analyst.
Computer Scientist
Computer Scientists are responsible for designing and developing new computer systems and technologies. This course will provide you with a solid foundation in the fundamentals of computer science, such as data structures and algorithms. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills are essential for any aspiring Computer Scientist.
Web Developer
Web Developers are responsible for designing, developing, and maintaining websites. This course will provide you with a solid foundation in the C programming language, which is essential for building efficient and reliable web applications. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills will be invaluable in your role as a Web Developer.
Database Administrator
Database Administrators are responsible for managing and maintaining databases. This course will provide you with a solid foundation in data management concepts, such as data sorting and searching. You will learn how to use logical statements to filter and organize data, and how to use arrays to store and manage large datasets. These skills will be invaluable in your role as a Database Administrator.
Systems Analyst
Systems Analysts are responsible for analyzing and designing computer systems. This course will provide you with a solid foundation in the fundamentals of computer science, such as data structures and algorithms. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills are essential for any aspiring Systems Analyst.
Information Security Analyst
Information Security Analysts are responsible for protecting computer systems and networks from unauthorized access. This course will provide you with a solid foundation in computer security concepts, such as data encryption and authentication. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills will be invaluable in your role as an Information Security Analyst.
Network Administrator
Network Administrators are responsible for managing and maintaining computer networks. This course will provide you with a solid foundation in networking concepts, such as IP addressing and routing. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills will be invaluable in your role as a Network Administrator.
Computer Programmer
Computer Programmers are responsible for writing and maintaining computer programs. This course will provide you with a solid foundation in the C programming language, which is essential for building efficient and reliable software. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills will be invaluable in your role as a Computer Programmer.
Software Tester
Software Testers are responsible for testing and evaluating software applications. This course will provide you with a solid foundation in software testing concepts, such as test planning and execution. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills will be invaluable in your role as a Software Tester.
IT Support Specialist
IT Support Specialists are responsible for providing technical support to users of computer systems. This course will provide you with a solid foundation in computer support concepts, such as troubleshooting and problem-solving. You will learn how to use logical statements to control the flow of a program, create and modify arrays to store data, and sort and search arrays using various algorithms. These skills will be invaluable in your role as an IT Support Specialist.
Data Entry Clerk
Data Entry Clerks are responsible for entering data into computer systems. This course may provide you with some helpful skills for this role, such as how to use logical statements to control the flow of a program and how to create and modify arrays to store data. However, this course does not cover all of the skills required for this role, such as data entry speed and accuracy.
Computer Operator
Computer Operators are responsible for operating and maintaining computer systems. This course may provide you with some helpful skills for this role, such as how to use logical statements to control the flow of a program and how to create and modify arrays to store data. However, this course does not cover all of the skills required for this role, such as system administration and maintenance.
Office Administrator
Office Administrators are responsible for providing administrative support to office staff. This course may provide you with some helpful skills for this role, such as how to use logical statements to control the flow of a program and how to create and modify arrays to store data. However, this course does not cover all of the skills required for this role, such as office management and customer service.
Receptionist
Receptionists are responsible for greeting and assisting visitors. This course does not provide any skills that are directly relevant to this role.

Reading list

We've selected 16 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in C Programming: Language Foundations.
A monumental work on computer programming, covering topics like algorithms, data structures, and numerical methods. Provides a comprehensive and in-depth treatment of fundamental concepts.
Considered a classic in the field, this book provides a definitive guide to the C programming language. Written by the creators of C, it serves as an invaluable resource for programmers of all levels.
Introduces fundamental algorithms and data structures in C. Covers sorting, searching, graph theory, and other essential topics. Provides code examples and exercises to enhance understanding.
A widely used textbook on algorithms and data structures, covering topics like sorting, searching, graph theory, and dynamic programming. Provides a solid foundation for understanding algorithm design and analysis.
A comprehensive guide to the Linux programming interface, focusing on system calls and kernel functions. Provides in-depth coverage of advanced topics like process management, file systems, and networking.
Provides a rigorous foundation in mathematical concepts essential for computer science, including combinatorics, graph theory, and number theory. Offers a deeper understanding of underlying principles and their applications in computing.
Covers fundamental concepts in discrete mathematics, including logic, sets, relations, graph theory, and counting techniques. Provides a strong foundation for understanding algorithms and data structures.
Provides a comprehensive understanding of computer systems from a programmer's perspective. Covers topics like memory management, process scheduling, and computer architecture.
A classic reference on advanced programming in the UNIX environment, covering topics like interprocess communication, network programming, and system administration. Provides valuable insights for experienced programmers.
Provides a comprehensive overview of modern operating systems, covering concepts like process management, memory management, and file systems. Offers a balanced approach between theory and practice.
Provides a comprehensive overview of data structures and algorithms in C. Explores fundamental concepts, analysis techniques, and implementation strategies.
Designed for beginners, this book offers a step-by-step approach to learning C programming. Covers basic concepts and provides hands-on exercises to reinforce understanding.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to C Programming: Language Foundations.
C Programming: Language Foundations - 2
Most relevant
The Unreal Arsenal: Learn C++ and Unreal Engine
Most relevant
A Full Introduction to C++ with Objects
Most relevant
Building a Calculator using C# in Visual Studio
Most relevant
Learn to Code using C# on VS Code
Most relevant
Introduction to C++ Programming: Create a Tic-Tac-Toe Game
Most relevant
C Programming: Pointers and Memory Management - 4
Most relevant
Controlling Program Flow in C# 9
Most relevant
С/C++ for competitive programming
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser