课程信息
4.6
76 个评分
10 个审阅
专项课程

第 2 门课程(共 4 门),位于

100% 在线

100% 在线

立即开始,按照自己的计划学习。
可灵活调整截止日期

可灵活调整截止日期

根据您的日程表重置截止日期。
初级

初级

完成时间(小时)

完成时间大约为20 小时

建议:4 weeks of study, 6–8 hours/week...
可选语言

英语(English)

字幕:英语(English)...

您将获得的技能

C ProgrammingCompilerDebugging
专项课程

第 2 门课程(共 4 门),位于

100% 在线

100% 在线

立即开始,按照自己的计划学习。
可灵活调整截止日期

可灵活调整截止日期

根据您的日程表重置截止日期。
初级

初级

完成时间(小时)

完成时间大约为20 小时

建议:4 weeks of study, 6–8 hours/week...
可选语言

英语(English)

字幕:英语(English)...

教学大纲 - 您将从这门课程中学到什么

1
完成时间(小时)
完成时间为 5 小时

Writing Code

In this module, you will learn to write code and do your first assignment in the Practice Programming Environment. You have practiced the first four steps of the Seven Steps in the previous course, and you will review them here before learning Step 5: Translating Your Algorithm to Code. Expert programmers spend most of their time planning before they begin writing code, and you will learn to do the same!...
Reading
7 个视频(共 34 分钟), 24 个阅读材料, 2 个测验
Video7 个视频
Intersection of Two Rectangles5分钟
Translating the Intersection Algorithm to Code5分钟
Introduction to the Programming Environment6分钟
Editing Files with Emacs8分钟
More about Git4分钟
GitHub1分钟
Reading24 个阅读材料
Planning10分钟
Revisiting Step 110分钟
Revisiting Step 210分钟
Step 3: Generalizing Values10分钟
Step 3: Repetitions10分钟
Step 3: Conditional Behavior10分钟
Revisiting Step 410分钟
Translation to Code10分钟
Translating Algorithm Components10分钟
Completed Rectangle Intersection Code10分钟
Top-down Design and Composability10分钟
Stars Example10分钟
Introduction to the Programming Environment10分钟
Using the Practice Programming Environment10分钟
Solutions to a Few Common Problems10分钟
UNIX basics10分钟
More UNIX Commands10分钟
Emacs10分钟
Assignment 01_apple10分钟
Git10分钟
[Optional Reference] Help me fix...10分钟
How Assignments Work in This Course10分钟
Assignments 02_code1 and 03_code210分钟
Next Steps10分钟
Quiz2 个练习
Steps 1–4 Review10分钟
Step 5 Concepts8分钟
2
完成时间(小时)
完成时间为 4 小时

Compiling and Running

Now that you know how to plan an algorithm and translate it to code, you need to learn how to compile and run it! You will learn about the compiler, which takes the code you wrote and translates it into instructions a machine can execute, which you can then run. You will also learn about different options you can give the compiler, as well as different ways to run your program that give you debugging information....
Reading
8 个视频(共 26 分钟), 17 个阅读材料, 3 个测验
Video8 个视频
"Hello World"3分钟
Planning isPrime3分钟
Generalizing isPrime5分钟
Translating isPrime to Code2分钟
Comparing Output with diff3分钟
Build Tool: make3分钟
Compiling with a Makefile2分钟
Reading17 个阅读材料
Compiling Overview10分钟
Compilation Process10分钟
Preprocessing10分钟
Assignment 04_compile10分钟
Getting Help: man Pages10分钟
Assignment 05_squares10分钟
More about Macros and Header Files10分钟
The Actual Compiler10分钟
Compiler Errors10分钟
Assembling10分钟
Linking10分钟
Make10分钟
Fancier make Options10分钟
Running Your Program10分钟
valgrind10分钟
Compiler Options10分钟
Assignments 06_rect and 07_retirement10分钟
Quiz3 个练习
Compiling8分钟
Compilation Process10分钟
Make and Valgrind10分钟
3
完成时间(小时)
完成时间为 3 小时

Testing and debugging

Two skills that are crucial to good programming are testing—finding problems with your code, and debugging—fixing them. In this module you will learn systematic ways to identify problems in your code, as well as how to apply the scientific method to fix your program when you do find a bug....
Reading
5 个视频(共 19 分钟), 17 个阅读材料, 3 个测验
Video5 个视频
Test-driven Development1分钟
Code Review2分钟
Finding Problems with Valgrind5分钟
Gathering Information with gdb6分钟
Reading17 个阅读材料
Black Box Testing10分钟
Practical Tips for Designing Test Cases10分钟
White Box Testing10分钟
Generating Test Cases10分钟
Asserts10分钟
Code Review10分钟
Assignments 08_testing and 09_testing10分钟
Step 7: Debugging10分钟
The Scientific Method10分钟
Accept or Reject Your Hypothesis?10分钟
Intro to gdb10分钟
Getting Started with gdb10分钟
Investigating the State of Your Program10分钟
Controlling Execution10分钟
Watchpoints10分钟
Signals10分钟
Assignment 10_gdb10分钟
Quiz3 个练习
Testing8分钟
Debugging8分钟
gdb4分钟
4
完成时间(小时)
完成时间为 1 小时

Project

In this module you will begin the project you will complete over the course of the rest of the specialization. At the end of each course, you will write a piece of a program that will calculate the odds of different poker hands winning with a Monte Carlo simulation—a way to calculate complicated probabilities by generating random data....
Reading
2 个视频(共 8 分钟), 3 个阅读材料
Video2 个视频
Poker Project Roadmap1分钟
Reading3 个阅读材料
Assignment c2prj_cards10分钟
Rules of Poker10分钟
Assignment c3prj_testing10分钟
完成时间(小时)
完成时间为 1 小时

Practice Programming Environment

...
Reading
1 个测验
4.6
10 个审阅Chevron Right

热门审阅

创建者 VMNov 4th 2018

Black box testing is very useful skill.\n\nI would never use gdb if these guys did not make me. I'm happy they did! :)

创建者 BTNov 18th 2018

Awesome course to learn about the essential tools for coding like emacs, gdb etc..

讲师

Avatar

Andrew D. Hilton

Associate Professor of the Practice
Electrical and Computer Engineering
Avatar

Genevieve M. Lipp

Adjunct Professor
Electrical and Computer Engineering/Mechanical Engineering
Avatar

Anne Bracy

Senior Lecturer
Computer Science, Cornell University

关于 Duke University

Duke University has about 13,000 undergraduate and graduate students and a world-class faculty helping to expand the frontiers of knowledge. The university has a strong commitment to applying knowledge in service to society, both near its North Carolina campus and around the world....

关于 Introduction to Programming in C 专项课程

This specialization develops strong programming fundamentals for learners who want to solve complex problems by writing computer programs. Through four courses, you will learn to develop algorithms in a systematic way and read and write the C code to implement them. This will prepare you to pursue a career in software development or other computational fields. Successful completion of this Specialization will be considered by admissions as a demonstration of your skill and enhance your master’s application to Duke’s Pratt School of Engineering....
Introduction to Programming in C

常见问题

  • 注册以便获得证书后,您将有权访问所有视频、测验和编程作业(如果适用)。只有在您的班次开课之后,才可以提交和审阅同学互评作业。如果您选择在不购买的情况下浏览课程,可能无法访问某些作业。

  • 您注册课程后,将有权访问专项课程中的所有课程,并且会在完成课程后获得证书。您的电子课程证书将添加到您的成就页中,您可以通过该页打印您的课程证书或将其添加到您的领英档案中。如果您只想阅读和查看课程内容,可以免费旁听课程。

  • No. Completion of a Coursera course does not earn you academic credit from Duke; therefore, Duke is not able to provide you with a university transcript. However, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.

还有其他问题吗?请访问 学生帮助中心