课程概况

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.

计算思维c语言软件,C语言编程入门与计算思维相关推荐

  1. 题目 1010: [编程入门]利润计算

    题目 1010: [编程入门]利润计算 [编程入门]利润计算 题目 1010: [编程入门]利润计算 题目描述 输入格式 输出格式 样例输入 样例输出 时间限制: 1s 内存限制: 128MB 提交: ...

  2. Java语言进阶:网络编程入门

    Java语言进阶:网络编程 网络编程入门 C/S C/S结构 :全称为Client/Server结构,是指客户端和服务器结构.常见程序有QQ.迅雷等软件. 特点: 客户端和服务器是分开的,需要下载客户 ...

  3. 寝室管理系统c语言软件,C语言宿舍管理系统课设(附源码).doc

    PAGE PAGE 1 C语言宿舍管理系统课设 项目说明 本系统基于C语言开发,适用于刚入门的C语言新手项目课设,开发软件采用VC++6.0开发,VS,DEV C++等均可运行.(书生) 项目运行截图 ...

  4. vs2015mfc编程c语言,计算机技术《VS2015_MFC编程入门》.pdf

    目录 VS2010/MFC 编程入门之前言3 VS2010/MFC 编程入门之一(VS2010 与MSDN 安装过程图解)4 VS2010/MFC 编程入门之二(利用MFC 向导生成单文档应用程序框架 ...

  5. python自学需要下载软件吗_编程入门先学什么软件 想要自学编程,先学的Python,需要下载什么软件,有什么推荐课程吗?...

    编程入门自学需要什么软件? 那要看你学啥语言了,如果java,就选eclipse,editplus.如果是c语言,我建议选择,vs或者C-FREE,python的话,我就不太清楚了.我个人基本不用py ...

  6. c语言计算打字速度测试软件,C语言 - 在线打字测试(dazi.kukuw.com)

    C语言 贡献者:廾匸 类别:代码 时间:2020-02-11 21:04:41 收藏数:10 评分:0 返回上页 举报此文章 请选择举报理由: 广告/谣言/欺诈 政治敏感 色情/违法信息 垃圾文章 其 ...

  7. c语言求利润的编程,[编程入门]利润计算-题解(C语言代码)

    ```c #include int jiangjin_1(int);//利润 <= 100000 int jiangjin_2(int);//利润 > 100000 && ...

  8. c语言 异或_编程入门:C语言基础知识全网超全不用到处找了!(文末附清单)

    你背或者不背,干货就在那里,不悲不喜 你学或者不学,编程就在那里,不来不去 听到这话的你是否略感扎心? 01基础知识 1. 计算机系统的主要技术指标与系统配置. 2. 计算机系统.硬件.软件及其相互关 ...

  9. MT4-MQL4语言EA自动交易编程入门到精通

    本教学课程主要面向MQL4语言初学者和爱好者,旨在帮助读者掌握MQL4语言基础知识.了解开发技巧并积累一定的EA或者指标项目开发实战经验.当读者系统的学习完本课程内容之后,就可以熟练的开发一套自己的E ...

最新文章

  1. ubuntu mysql5.6 编译安装_Ubuntu14.04编译安装mysql5.6.26
  2. JS的表单序列化,数组去重,判断数组是否重复等方法
  3. Angular双向数据绑定原理
  4. POJ2771最大独立集元素个数
  5. windows7下消除快捷键箭头的方法
  6. 浅谈OCR之Tesseract
  7. linux socket默认超时时间设置,Socket中如何设置连接超时 (转)
  8. DrawerLayout和NavigationView的简单实用
  9. 快来,前方美女出没!!
  10. 数据分析——AB测试
  11. 百利天恒更新招股书:上半年收入约3亿元,持续加大研发投入
  12. oracle查询数字类溢出,有趣的数值溢出(一)
  13. 云服务器忘记密码怎么设置?云服务器BCC实例重置密码方法【附视频】
  14. python 回溯算法总结
  15. 种子的“选择”可影响地区生物多样性
  16. Cesium不改源码支持坐标系为4490的ArcGIS Rest缓存服务的解决方案,代码为TypeScript编写(vx gzh【图说GIS】)
  17. 如何使用TestFlight发布和安装测试版的app
  18. java常用二进制数据转换工具
  19. 25_类和面向对象的概念
  20. 深度神经网络压缩和加速详解

热门文章

  1. python童年_300行Python代码实现俄罗斯方块,致敬逝去的童年
  2. 计算机能力挑战赛_蓝桥杯、PAT、CCF CSP、团体程序设计天梯赛、传智杯、计算机能力挑战赛、软考等大学生编程比赛/考试介绍...
  3. 怎么开通手机信息服务器,如何用手机建立网站
  4. php png 输出,PHP直接输出一张图片代码写法
  5. 贴花纸怎么贴_陶瓷贴花纸DIY怎么做?
  6. python百钱买百鸡问题答案_PHP/Python---百钱百鸡简单实现及优化
  7. 神经网络的反向传播推导实例
  8. OpenCV鼠标事件和滑动条事件
  9. 安卓向服务器发送List数据
  10. C站最全Python库总结丨标准库+高级库