課程信息
4.5
75 個評分
10 個審閱
專項課程

第 2 門課程(共 4 門),位於

100% online

100% online

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
初級

初級

完成時間(小時)

完成時間大約為20 小時

建議:4 weeks of study, 6–8 hours/week...
可選語言

英語(English)

字幕:英語(English)...

您將獲得的技能

C ProgrammingCompilerDebugging
專項課程

第 2 門課程(共 4 門),位於

100% online

100% online

立即開始,按照自己的計劃學習。
可靈活調整截止日期

可靈活調整截止日期

根據您的日程表重置截止日期。
初級

初級

完成時間(小時)

完成時間大約為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.5
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! :)

創建者 APOct 28th 2018

Great Course!! This course provided ample theoretical and practical knowledge.

講師

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.

還有其他問題嗎?請訪問 學生幫助中心