你有没有好奇过:计算机为什么能够进行计算?计算机程序是怎样运行的?你是否想知道:计算机未来可能的发展趋势有哪些?程序是如何编写出来的?如何学习程序设计语言?程序设计语言的基本成分有哪些?《计算导论》这门课将帮助你解决这些疑惑。
计算导论与C语言基础
This course is part of 程序设计与算法 Specialization
Instructor: Ge Li 李戈, Ph.D.
42,474 already enrolled
Included with
(1,729 reviews)
Skills you'll gain
Details to know
Add to your LinkedIn profile
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
There are 13 modules in this course
欢迎大家来到《计算导论与C语言基础》!在这门课程当中,我们将敲开神秘的计算机世界之门,探索它的历史,解读它的基本原理,讨论它未来的发展趋势;同时我们还将学习C语言这一经典的编程语言,开启我们充满趣味与挑战的程序设计之旅。这个欢迎模块就让我们在出发之前读好“地图”,通过观看两段视频来了解一下这段奇妙的旅程都将涵盖哪些内容吧!PS:我们这门课程一直处在不断地建设与优化当中,吸取了很多以往课程的经典视频,所以如果你看到视频中出现了不同课程的名字,也不要惊讶哦,因为你正在集百家所长。
What's included
2 videos
作为开篇的第一次课,我们先来了解一下现代计算机运行的基本原理。我们将从历史上的三次数学危机开始讲起,引出现代计算机的基本原型——图灵机的基本原理,进而解释支撑现代计算机技术的几个基础性理论(二进制、布尔代数、数字逻辑电路)及其解决的基本问题。本次课的主要目的:帮助同学们了解现代计算机的基本原理。本次课的焦点问题:计算机为什么能利用电路实现计算? PS:我们这门课程一直处在不断地建设与优化当中,吸取了很多以往课程的经典视频,所以如果你看到视频中出现了不同课程的名字,也不要惊讶哦,因为你正在集百家所长:)
What's included
5 videos
本次课将带领同学们了解计算机的演变历史,希望通过这个历史演变的过程帮助同学们了解“人类在计算科学方面是如何一步步积累成果的“。在此基础上,我们再来讨论一下未来计算机的发展趋势,并重点介绍了量子计算机的基本原理与研究现状。 本次课的主要目的:希望透过历史引发大家对计算机发展现状的思考。 本次课的焦点问题:未来计算机的发展趋势是什么?为什么不能把CPU造得更大些?什么是量子计算机?
What's included
5 videos
本次课带大家走进计算机,了解计算机的几个基本构成成分及其作用,在此基础上,了解CPU指令的基本执行过程、了解计算机执行程序的过程。 本次课的主要目的:了解计算机是如何运行程序的。 本次课的焦点问题:为什么说现代计算机是冯诺依曼式计算机?电路为什么能存储数字?CPU是不是任意命令都能执行?
What's included
6 videos1 reading
本次课也许是计算机程序设计部分“最重要”的一次课程,在这次课程中,我们将通过一个例子,感受一个结论——“计算机程序 其实是对 人们思维过程的一个描述”;在此基础上,我们将立刻把自己放置于一个“计算机程序设计语言”的设计者的角度,去思考“如果让我们设计一门程序设计语言,我们将如何设计?” 进而,在我们给出关于这个问题的“抽象回答”的基础上,我们迅速地带领大家“快步走进C程序”,迅速了解在C程序设计语言中,都有哪些成分。在这次课的最后,我们通过一个例子,以“感性的方式”让大家感受了一下“什么样的程序是好程序”。 下面就让我们开始这次“最重要”的课程吧——
What's included
10 videos1 programming assignment
本次课程堪称计算机程序设计部分“第二重要”的课程。本次课将在大家感受过“什么是计算机程序”的基础上,来回答一个非常基本的问题——“如何设计计算机程序?” 我们将明确阐述“计算机程序是人们对自己头脑中构想的解决方案的描述”这一思想,并通过例子说明“要想写出计算机程序,必须先想出解决方案”的基本道理。 在此基础上,我们还希望通过一个简单的例子,让大家“感性地”了解一下,什么是“结构化的程序设计”(“结构化程序设计”是比“面向对象的程序设计”更基础的设计思想,因此,了解这种思想,非常重要!)。
What's included
4 videos1 reading1 programming assignment
本次课帮助大家了解C语言的历史,了解C语言规范(Specification)的版本演进,了解C语言的规范是一个“宽松”的规范;在此基础上,我们将阐述一门程序设计语言所包含的四种基本成分(如上所述)。 焦点问题:为什么相同的C程序在不同的C程序编译器上,会编译出不同的结果?
What's included
4 videos2 programming assignments
本节我们将介绍C语言中的“数据成分”。重点在于:掌握各种数据类型在内存中所占的空间大小,掌握各种数据类型的特点。
What's included
11 videos2 programming assignments
本节我们将介绍C语言中的“运算成分”。重点在于:掌握各种运算符的基本含义,特别需要掌握“由各种运算符引起的数据类型转换规律”。
What's included
9 videos2 programming assignments
本节我们将介绍C语言中的“控制成分”。重点在于:掌握各种控制语句的使用方式。顺便,了解一下历史上的Goto之争。
What's included
3 videos
在学习了C程序语言的几种重要的构成成分之后,为了帮助大家能够更好地使用已经学到的C语言成分编写程序,我们再介绍一种非常重要的数据结构——数组。 本部分的重点在于:掌握数组的定义、引用方法,并掌握数组的基本作用。特别的,需要大家掌握利用数组的下标来解决问题的“技巧”。
What's included
5 videos1 programming assignment
在能够运用“数组”来解决问题的基础上,再来学习一下“字符串”的特性,在此基础上,我们将讲授C语言的中的“第四种成分”——输入输出成分。 本部分的重点在于:掌握“数组”与“字符串”的区别,理解“输入缓冲区”的基本机理,掌握cin cout的使用技巧。
What's included
5 videos1 reading
谢谢你一路的陪伴,我们终于来到了《计算导论与C语言基础》这门课的最后一个模块,现在就让我们给这段难忘的学习里程画上一个圆满的句号。我在期末考试中为大家设计了几道有趣的编程题目,让我们来一起迎接挑战,证明自己的实力吧!如果测试没有一次通过也不要紧,我们的自助平台课程鼓励你反复尝试直到取得满意的成绩,加油!如果你成功地通过了测试,那我们就相约在专项课程的下一门《C程序设计进阶》中见咯!
What's included
1 video1 programming assignment
Instructor
Offered by
Recommended if you're interested in Software Development
Peking University
Peking University
National Taiwan University
Fudan University
Why people choose Coursera for their career
Learner reviews
1,729 reviews
- 5 stars
88.18%
- 4 stars
9.95%
- 3 stars
1.33%
- 2 stars
0.17%
- 1 star
0.34%
Showing 3 of 1729
Reviewed on Dec 3, 2018
Very well. This course is suitable for those who want to learn c language but without any background.
Reviewed on Dec 12, 2018
老师讲的很好,课程安排肥肠合理。琐碎知识点的确实落实很到位,但是wo x可程序的时候依然偶尔很迷茫很懵圈,加上错误的答案并没有明确的解答与分析,相同的题目有不同的答案却也并没有合适的资源,所以稍有压力,导致整个课程拖的时间比较久。
Reviewed on Jan 23, 2016
A good introductory course. Easy and you can begin to program after taking the course. You may skip the first few chapters since they may not be about the techniques you want to learn.
New to Software Development? Start here.
Open new doors with Coursera Plus
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Advance your career with an online degree
Earn a degree from world-class universities - 100% online
Join over 3,400 global companies that choose Coursera for Business
Upskill your employees to excel in the digital economy
Frequently asked questions
Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:
The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.