關於此專項課程

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.

...
Globe

100% 在線課程

立即開始,按照自己的計劃學習。
Calendar

靈活的計劃

設置並保持靈活的截止日期。
Beginner Level

初級

Clock

Approx. 3 months to complete

Suggested 6 hours/week
Comment Dots

English

字幕:English...

您將獲得的技能

C ProgrammingCompilerDebugging
Globe

100% 在線課程

立即開始,按照自己的計劃學習。
Calendar

靈活的計劃

設置並保持靈活的截止日期。
Beginner Level

初級

Clock

Approx. 3 months to complete

Suggested 6 hours/week
Comment Dots

English

字幕:English...

專項課程的運作方式

加入課程

Coursera 專項課程是幫助您掌握一門技能的一系列課程。若要開始學習,請直接註冊專項課程,或預覽專項課程並選擇您要首先開始學習的課程。當您訂閱專項課程的部分課程時,您將自動訂閱整個專項課程。您可以只完成一門課程,您可以隨時暫停學習或結束訂閱。訪問您的學生面板,跟踪您的課程註冊情況和進度。

實踐項目

每個專項課程都包括實踐項目。您需要成功完成這個(些)項目才能完成專項課程並獲得證書。如果專項課程中包括單獨的實踐項目課程,則需要在開始之前完成其他所有課程。

獲得證書

在結束每門課程並完成實踐項目之後,您會獲得一個證書,您可以向您的潛在雇主展示該證書並在您的職業社交網絡中分享。

how it works

此專項課程包含 4 門課程

課程1

Programming Fundamentals

4.6
357 個評分
75 個審閱
Programming is an increasingly important skill, whether you aspire to a career in software development, or in other fields. This course is the first in the specialization Introduction to Programming in C, but its lessons extend to any language you might want to learn. This is because programming is fundamentally about figuring out how to solve a class of problems and writing the algorithm, a clear set of steps to solve any problem in its class. This course will introduce you to a powerful problem-solving process—the Seven Steps—which you can use to solve any programming problem. In this course, you will learn how to develop an algorithm, then progress to reading code and understanding how programming concepts relate to algorithms....
課程2

Writing, Running, and Fixing Code in C

4.5
63 個評分
8 個審閱
Building on the course Programming Fundamentals, this course will teach you how to write code by first planning what your program should do—an important approach for novice and professional programmers. You will learn how to compile and run your program, and then how to test and debug it. This course builds on the Seven Steps you have already learned and provides a framework for systematically testing for problems and fixing them, so you can find and fix problems efficiently....
課程3

Pointers, Arrays, and Recursion

4.4
30 個評分
4 個審閱
The third course in the specialization Introduction to Programming in C introduces the programming constructs pointers, arrays, and recursion. Pointers provide control and flexibility when programming in C by giving you a way to refer to the location of other data. Arrays provide a way to bundle data by guaranteeing sequences of data are grouped together. Finally, recursive functions—functions that call themselves—provide an alternative to iteration that are very useful for implementing certain algorithms....
課程4

Interacting with the System and Managing Memory

4.2
14 個評分
3 個審閱
The final course in the specialization Introduction to Programming in C will teach you powerful new programming techniques for interacting with the user and the system and dynamically allocating memory. You will learn more sophisticated uses for pointers, such as strings and multidimensional arrays, as well as how to write programs that read and write files and take input from the user. Learning about dynamic memory allocation will allow your programs to perform complex tasks that will be applied in the final part of the specialization project: a Monte Carlo simulation for calculating poker hand probabilities....

講師

Andrew D. Hilton

Associate Professor of the Practice
Electrical and Computer Engineering

Genevieve M. Lipp

Adjunct Professor
Electrical and Computer Engineering/Mechanical Engineering

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....

常見問題

  • Yes! To get started, click the course card that interests you and enroll. You can enroll and complete the course to earn a shareable certificate, or you can audit it to view the course materials for free. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. Visit your learner dashboard to track your progress.

  • This course is completely online, so there’s no need to show up to a classroom in person. You can access your lectures, readings and assignments anytime and anywhere via the web or your mobile device.

  • This Specialization doesn't carry university credit, but some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.

  • Each course is designed to take 4 weeks of study, with 6–8 hours per week. Some learners may work through the specialization more or less quickly.

  • This specialization is for learners who have an interest in learning how to program, for people with no programming experience or for people with some experience who would like to gain solid fundamentals and a deeper understanding of how to program effectively.

  • If you are new to programming, you should take the courses in order. Otherwise, you could start with Course 2 or Course 3, depending on your previous experience. Intermediate programmers new to C may like to start with Course 1 to learn the basics of syntax (and review algorithm design relevant to all languages).

  • You will be able to approach a programming problem systematically, from designing an algorithm, to implementing it in code, to thoroughly testing your code. You will have a strong foundation in programming principles and be able to use C syntax fluently. Your final project will prove you can write a sophisticated program of intermediate scale—a Monte Carlo simulation to calculate poker hand probabilities.

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