Informações sobre o curso
4.6
150 classificações
26 avaliações

100% online

Comece imediatamente e aprenda em seu próprio cronograma.

Prazos flexíveis

Redefinir os prazos de acordo com sua programação.

Nível iniciante

Aprox. 21 horas para completar

Sugerido: 4 weeks of study, 6–8 hours/week...

Inglês

Legendas: Inglês, Vietnamita

Habilidades que você terá

C ProgrammingCompilerDebugging

100% online

Comece imediatamente e aprenda em seu próprio cronograma.

Prazos flexíveis

Redefinir os prazos de acordo com sua programação.

Nível iniciante

Aprox. 21 horas para completar

Sugerido: 4 weeks of study, 6–8 hours/week...

Inglês

Legendas: Inglês, Vietnamita

Programa - O que você aprenderá com este curso

Semana
1
5 horas para concluir

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!...
7 vídeos (total de (Total 34 mín.) min), 24 leituras, 2 testes
7 videos
Intersection of Two Rectangles5min
Translating the Intersection Algorithm to Code5min
Introduction to the Programming Environment6min
Editing Files with Emacs8min
More about Git4min
GitHub1min
24 leituras
Planning10min
Revisiting Step 110min
Revisiting Step 210min
Step 3: Generalizing Values10min
Step 3: Repetitions10min
Step 3: Conditional Behavior10min
Revisiting Step 410min
Translation to Code10min
Translating Algorithm Components10min
Completed Rectangle Intersection Code10min
Top-down Design and Composability10min
Stars Example10min
Introduction to the Programming Environment10min
Using the Practice Programming Environment10min
Solutions to a Few Common Problems10min
UNIX basics10min
More UNIX Commands10min
Emacs10min
Assignment 01_apple10min
Git10min
[Optional Reference] Help me fix...10min
How Assignments Work in This Course10min
Assignments 02_code1 and 03_code210min
Next Steps10min
2 exercícios práticos
Steps 1–4 Review10min
Step 5 Concepts8min
Semana
2
4 horas para concluir

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....
8 vídeos (total de (Total 26 mín.) min), 17 leituras, 4 testes
8 videos
"Hello World"3min
Planning isPrime3min
Generalizing isPrime5min
Translating isPrime to Code2min
Comparing Output with diff3min
Build Tool: make3min
Compiling with a Makefile2min
17 leituras
Compiling Overview10min
Compilation Process10min
Preprocessing10min
Assignment 04_compile10min
Getting Help: man Pages10min
Assignment 05_squares10min
More about Macros and Header Files10min
The Actual Compiler10min
Compiler Errors10min
Assembling10min
Linking10min
Make10min
Fancier make Options10min
Running Your Program10min
valgrind10min
Compiler Options10min
Assignments 06_rect and 07_retirement10min
4 exercícios práticos
Compiling8min
Compilation Process10min
Make and Valgrind10min
Prototype: Assignment 06 Practice Quiz10min
Semana
3
3 horas para concluir

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....
5 vídeos (total de (Total 19 mín.) min), 17 leituras, 3 testes
5 videos
Test-driven Development1min
Code Review2min
Finding Problems with Valgrind5min
Gathering Information with gdb6min
17 leituras
Black Box Testing10min
Practical Tips for Designing Test Cases10min
White Box Testing10min
Generating Test Cases10min
Asserts10min
Code Review10min
Assignments 08_testing and 09_testing10min
Step 7: Debugging10min
The Scientific Method10min
Accept or Reject Your Hypothesis?10min
Intro to gdb10min
Getting Started with gdb10min
Investigating the State of Your Program10min
Controlling Execution10min
Watchpoints10min
Signals10min
Assignment 10_gdb10min
3 exercícios práticos
Testing8min
Debugging8min
gdb4min
Semana
4
1 hora para concluir

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....
2 vídeos (total de (Total 8 mín.) min), 3 leituras
2 videos
Poker Project Roadmap1min
3 leituras
Assignment c2prj1_cards30min
Rules of Poker10min
Assignment c2prj2_testing30min
1 hora para concluir

Practice Programming Environment

...
1 teste
4.6
26 avaliaçõesChevron Right

50%

consegui um benefício significativo de carreira com este curso

50%

recebi um aumento ou promoção

Melhores avaliações

por SKDec 24th 2018

Very detailed and very helpful. Thanks to the tutors for putting together such a detailed course where nothing seems rushed while at the same time everything is explained.

por EMJan 4th 2019

This course gives you a great overview (in reasonable depth) of the tools and concepts that you need when starting as a novice programmer. Strongly recommended.

Instrutores

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

Sobre Universidade Duke

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

Sobre o Programa de cursos integrados 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

Perguntas Frequentes – FAQ

  • Ao se inscrever para um Certificado, você terá acesso a todos os vídeos, testes e tarefas de programação (se aplicável). Tarefas avaliadas pelos colegas apenas podem ser enviadas e avaliadas após o início da sessão. Caso escolha explorar o curso sem adquiri-lo, talvez você não consiga acessar certas tarefas.

  • Quando você se inscreve no curso, tem acesso a todos os cursos na Especialização e pode obter um certificado quando concluir o trabalho. Seu Certificado eletrônico será adicionado à sua página de Participações e você poderá imprimi-lo ou adicioná-lo ao seu perfil no LinkedIn. Se quiser apenas ler e assistir o conteúdo do curso, você poderá frequentá-lo como ouvinte sem custo.

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

Mais dúvidas? Visite o Central de Ajuda ao Aprendiz.