Acerca de este Curso
4.6
96 calificaciones
13 revisiones
100 % en línea

100 % en línea

Comienza de inmediato y aprende a tu propio ritmo.
Fechas límite flexibles

Fechas límite flexibles

Restablece las fechas límite en función de tus horarios.
Nivel principiante

Nivel principiante

Horas para completar

Aprox. 20 horas para completar

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

Inglés (English)

Subtítulos: Inglés (English)

Habilidades que obtendrás

C ProgrammingCompilerDebugging
100 % en línea

100 % en línea

Comienza de inmediato y aprende a tu propio ritmo.
Fechas límite flexibles

Fechas límite flexibles

Restablece las fechas límite en función de tus horarios.
Nivel principiante

Nivel principiante

Horas para completar

Aprox. 20 horas para completar

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

Inglés (English)

Subtítulos: Inglés (English)

Programa - Qué aprenderás en este curso

Semana
1
Horas para completar
5 horas para completar

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 videos (Total 34 minutos), 24 readings, 2 quizzes
Video7 videos
Intersection of Two Rectangles5m
Translating the Intersection Algorithm to Code5m
Introduction to the Programming Environment6m
Editing Files with Emacs8m
More about Git4m
GitHub1m
Reading24 lecturas
Planning10m
Revisiting Step 110m
Revisiting Step 210m
Step 3: Generalizing Values10m
Step 3: Repetitions10m
Step 3: Conditional Behavior10m
Revisiting Step 410m
Translation to Code10m
Translating Algorithm Components10m
Completed Rectangle Intersection Code10m
Top-down Design and Composability10m
Stars Example10m
Introduction to the Programming Environment10m
Using the Practice Programming Environment10m
Solutions to a Few Common Problems10m
UNIX basics10m
More UNIX Commands10m
Emacs10m
Assignment 01_apple10m
Git10m
[Optional Reference] Help me fix...10m
How Assignments Work in This Course10m
Assignments 02_code1 and 03_code210m
Next Steps10m
Quiz2 ejercicios de práctica
Steps 1–4 Review10m
Step 5 Concepts8m
Semana
2
Horas para completar
4 horas para completar

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 videos (Total 26 minutos), 17 readings, 3 quizzes
Video8 videos
"Hello World"3m
Planning isPrime3m
Generalizing isPrime5m
Translating isPrime to Code2m
Comparing Output with diff3m
Build Tool: make3m
Compiling with a Makefile2m
Reading17 lecturas
Compiling Overview10m
Compilation Process10m
Preprocessing10m
Assignment 04_compile10m
Getting Help: man Pages10m
Assignment 05_squares10m
More about Macros and Header Files10m
The Actual Compiler10m
Compiler Errors10m
Assembling10m
Linking10m
Make10m
Fancier make Options10m
Running Your Program10m
valgrind10m
Compiler Options10m
Assignments 06_rect and 07_retirement10m
Quiz3 ejercicios de práctica
Compiling8m
Compilation Process10m
Make and Valgrind10m
Semana
3
Horas para completar
3 horas para completar

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 videos (Total 19 minutos), 17 readings, 3 quizzes
Video5 videos
Test-driven Development1m
Code Review2m
Finding Problems with Valgrind5m
Gathering Information with gdb6m
Reading17 lecturas
Black Box Testing10m
Practical Tips for Designing Test Cases10m
White Box Testing10m
Generating Test Cases10m
Asserts10m
Code Review10m
Assignments 08_testing and 09_testing10m
Step 7: Debugging10m
The Scientific Method10m
Accept or Reject Your Hypothesis?10m
Intro to gdb10m
Getting Started with gdb10m
Investigating the State of Your Program10m
Controlling Execution10m
Watchpoints10m
Signals10m
Assignment 10_gdb10m
Quiz3 ejercicios de práctica
Testing8m
Debugging8m
gdb4m
Semana
4
Horas para completar
1 hora para completar

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 videos (Total 8 minutos), 3 readings
Video2 videos
Poker Project Roadmap1m
Reading3 lecturas
Assignment c2prj_cards10m
Rules of Poker10m
Assignment c3prj_testing10m
Horas para completar
1 hora para completar

Practice Programming Environment

...
Reading
1 quiz
4.6
13 revisionesChevron Right

Principales revisiones

por 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! :)

por BTNov 18th 2018

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

Instructores

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

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

Acerca del programa especializado 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

Preguntas Frecuentes

  • Una vez que te inscribes para obtener un Certificado, tendrás acceso a todos los videos, cuestionarios y tareas de programación (si corresponde). Las tareas calificadas por compañeros solo pueden enviarse y revisarse una vez que haya comenzado tu sesión. Si eliges explorar el curso sin comprarlo, es posible que no puedas acceder a determinadas tareas.

  • Cuando te inscribes en un curso, obtienes acceso a todos los cursos que forman parte del Programa especializado y te darán un Certificado cuando completes el trabajo. Se añadirá tu Certificado electrónico a la página Logros. Desde allí, puedes imprimir tu Certificado o añadirlo a tu perfil de LinkedIn. Si solo quieres leer y visualizar el contenido del curso, puedes auditar el curso sin costo.

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

¿Tienes más preguntas? Visita el Centro de Ayuda al Alumno.