C语言编程入门与计算思维

Computational Thinking with Beginning C Programming

专项课程计算机
7312 次查看
科罗拉多大学系统
Coursera
  • 完成时间大约为 2 个月
  • 初级
  • 英语
注:本课程由Coursera和Linkshare共同提供,因开课平台的各种因素变化,以上开课日期仅供参考

课程概况

This specialization is designed to let you explore computational thinking and beginning C programming topics, applying those concepts to develop solutions to a variety of practical problems.The first course assumes no programming experience, and throughout the 4 courses in the specialization you’ll learn about both computational thinking and C programming. The material in the courses in the specialization is equivalent to our computational thinking course at UCCS.

包含课程

课程1
Algorithms, Data Collection, and Starting to Code

This course starts you on your journey learning about computational thinking and beginning C programming. If you’d like to explore how we can interact with the world in a rigorous, computational way, and would also like to start learning to program, this is the course for you!You may have heard lots of talk about computational thinking recently, but if you ask 10 different people what it is you’ll probably get 10 different answers. Rather than trying to define computational thinking, we’ll just say it’s a problem-solving process that includes lots of different components. In this course, we’ll explore algorithms and data collection.

Most people have a better understanding of what beginning C programming means! You’ll start learning how to develop C programs in this course by writing your first C program; learning about data types, variables, and constants; and honing your C programming skills by implementing a variety of STEM computations. This course doesn't assume you have any previous programming experience, so don't worry if you've never written code before.

If that all sounds interesting to you, go ahead and jump into the course!

Caution: Beginning (assuming no prior programming knowledge) is not the same as easy (not hard to do). Learning to program IS hard to do, especially since the courses in this specialization are built from a freshman-level college course. Meeting the course challenges while you master the material will be rewarding to you, but doing that will require hard work and maybe even a few expletives along the way.

Module 1: Learn about algorithms and write your first C program
Module 2: Discover how we store data in our programs
Module 3: Explore how we use data collection to solve problems and answer questions
Module 4: Practice writing C programs to implement STEM computations

课程2
Data Analysis and Representation, Selection and Iteration

This course is the second course in the specialization exploring both computational thinking and beginning C programming. Rather than trying to define computational thinking, we’ll just say it’s a problem-solving process that includes lots of different components. Most people have a better understanding of what beginning C programming means!This course assumes you have the prerequisite knowledge from the previous course in the specialization. You should make sure you have that knowledge, either by taking that previous course or from personal experience, before tackling this course. The required prerequisite knowledge is listed below.

Prerequisite computational thinking knowledge: Algorithms and procedures, data collection
Prerequisite C knowledge: Data types, variables, constants, and STEM computations

Throughout this course you'll learn about data analysis and data representation, which are computational thinking techniques that help us understand what sets of data have to tell us. For the programming topics, you'll continue building on your C knowledge by implementing selection, which lets us decide which code to execute, and iteration (or looping), which lets us repeat chunks of code multiple times.

Module 1: Learn about some common statistics we can calculate as we analyze sets of data
Module 2: Discover how we make decisions in our code
Module 3: Explore the various ways we can represent sets of data
Module 4: Use iteration (looping) to repeat actions in your code

课程3
Abstraction, Problem Decomposition, and FunctionsThis course is the third course in the specialization exploring both computational thinking and beginning C programming. Rather than trying to define computational thinking, we’ll just say it’s a problem-solving process that includes lots of different components. Most people have a better understanding of what beginning C programming means!This course assumes you have the prerequisite knowledge from the previous two courses in the specialization. You should make sure you have that knowledge, either by taking those previous courses or from personal experience, before tackling this course. The required prerequisite knowledge is listed below.

Prerequisite computational thinking knowledge: Algorithms and procedures and data collection, analysis, and representation
Prerequisite C knowledge: Data types, variables, constants; STEM computations; selection; and iteration (looping)

Throughout this course the computational thinking topics you'll explore are abstraction, which is deciding which details matter for the problem you're trying to solve, and problem decomposition, which is about breaking large problems into smaller sub-problems to handle complexity. For the programming topics, you'll continue building on your C knowledge by practicing using arrays, which let you store multiple values in a single variable, and strings, which are arrays of characters. You'll also learn how to implement functions, which are the mechanism we use for problem decomposition in our C programs.

Module 1: Learn about arrays as a way to store multiple values in a single variable
Module 2: Discover how we store and process strings (arrays of characters)
Module 3: Explore abstraction and problem decomposition
Module 4: Use functions to implement problem decomposition in your code

课程4
Simulation, Algorithm Analysis, and PointersThis course is the fourth and final course in the specialization exploring both computational thinking and beginning C programming. Rather than trying to define computational thinking, we’ll just say it’s a problem-solving process that includes lots of different components. Most people have a better understanding of what beginning C programming means!This course assumes you have the prerequisite knowledge from the previous three courses in the specialization. You should make sure you have that knowledge, either by taking those previous courses or from personal experience, before tackling this course. The required prerequisite knowledge is listed below.

Prerequisite computational thinking knowledge: Algorithms and procedures; data collection, analysis, and representation; abstraction; and problem decomposition
Prerequisite C knowledge: Data types, variables, constants; STEM computations; selection; iteration (looping); arrays; strings; and functions

Throughout this course the computational thinking topics you'll explore are: automation, simulation, parallelization, and algorithm analysis.For the programming topics, you'll continue building on your C knowledge by implementing file input and output in your programs and by exploring pointers in more depth.

Module 1: Learn how to read, write, and append to files. Explore automation
Module 2: Discover the benefits of simulation and parallelization
Module 3: Learn how to perform algorithm analysis to quantify algorithm complexity
Module 4: Explore how to use pointers in more depth

课程项目

Learners build a variety of C programs using the concepts covered in the specialization courses. They also apply computational thinking ideas in a number of exercises and topic understanding checks in algorithms; data collection, analysis, and representation; abstraction; automation; simulation; and parallelization.

预备知识

None. I don't assume any prior computational thinking or programming experience.

声明:MOOC中国十分重视知识产权问题,我们发布之课程均源自下列机构,版权均归其所有,本站仅作报道收录并尊重其著作权益。感谢他们对MOOC事业做出的贡献!
  • Coursera
  • edX
  • OpenLearning
  • FutureLearn
  • iversity
  • Udacity
  • NovoEd
  • Canvas
  • Open2Study
  • Google
  • ewant
  • FUN
  • IOC-Athlete-MOOC
  • World-Science-U
  • Codecademy
  • CourseSites
  • opencourseworld
  • ShareCourse
  • gacco
  • MiriadaX
  • JANUX
  • openhpi
  • Stanford-Open-Edx
  • 网易云课堂
  • 中国大学MOOC
  • 学堂在线
  • 顶你学堂
  • 华文慕课
  • 好大学在线CnMooc
  • (部分课程由Coursera、Udemy、Linkshare共同提供)

© 2008-2020 MOOC.CN 慕课改变你,你改变世界