Course

計算機程式設計 (Computer Programming)

National Taiwan University

This course provides a comprehensive introduction to computer programming in C. Students will learn the basic operations of computer programming and how to write programs in the C language. The course format includes video lectures that cover various programming concepts and practical applications.

The course is designed to be accessible to students with no prior computer knowledge, requiring only basic English vocabulary and junior high school level arithmetic skills. Students will have the opportunity to practice what they have learned through weekly programming homework on ideone.com, a web platform for compiling and running computer programs.

Certificate Available ✔

Get Started / More Info
計算機程式設計 (Computer Programming)
Course Modules

This course covers a range of important programming topics, including basic program structure, control structures, arrays, functions, pointers, and strings, equipping students with a solid understanding of C programming.

Week 1 - Introduction

Week 1 of this course introduces students to the fundamentals of computer programming in C. Topics include basic program structure, variables, input/output, arithmetic, comparison, and logical operators, providing a solid foundation for further learning. Students will also explore additional reference materials to enhance their understanding of the concepts.

Week 2 - Control Structure

Week 2 focuses on control structures in C programming. Students will learn about conditional statements, loops (including for, while, and do-while loops), and how to break and continue loops. Additional reference materials will be provided to reinforce learning, with practical applications such as determining the current day of the week.

Week 3 - Array

Week 3 delves into the topic of arrays in C programming. Students will explore array usage, as well as practical applications such as calculating the inner product, generating Fibonacci numbers, identifying prime numbers, and implementing bubble sort. The module also covers multi-dimensional arrays and their applications.

Week 4 - Functions

Week 4 focuses on functions in C programming. Students will learn about system and user-defined functions, parameter passing, and array parameter passing. The module also explores the use of functions to simplify program structure, as well as practical applications such as metal valuation.

Week 5 - Pointer

Week 5 is dedicated to the topic of pointers in C programming. Students will gain an understanding of pointer usage, referencing, dereferencing, parameter passing, arithmetic, and return values. The module emphasizes caution in using pointers and provides practical applications such as card shuffling.

Week 6 - String

Week 6 introduces students to the concept of strings in C programming. Topics include character and ASCII representation, string declaration, input, manipulation, comparison, and sorting. Students will also explore practical applications such as abbreviation and the manipulation of strings.

Final Exam

The final module encompasses the course's final exam, providing students with the opportunity to demonstrate their understanding and application of the concepts covered throughout the course.

More Software Development Courses

GPU Programming

Johns Hopkins University

Learn GPU programming to harness the power of parallel computing, enabling rapid data processing and algorithm execution on GPUs.

Browser-based Models with TensorFlow.js

DeepLearning.AI

Browser-based Models with TensorFlow.js is a Specialization that teaches you how to train and run machine learning models in any browser using TensorFlow.js. It...

GUI Programming: Create a Login System in Python

Coursera Project Network

Create a login system in Python using the Tkinter library to build a graphical user interface from scratch.

More C# Programming and Unity

University of Colorado System

More C# Programming and Unity is a comprehensive course for aspiring game developers, delving into advanced C# programming and Unity game development.