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. 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.
Instructor Details
Courses : 5
Specification: Pointers, Arrays, and Recursion
|
36 reviews for Pointers, Arrays, and Recursion
Add a review Cancel reply
This site uses Akismet to reduce spam. Learn how your comment data is processed.
Price | Free |
---|---|
Provider | |
Duration | 34 hours |
Year | 2018 |
Level | Beginner |
Language | English |
Certificate | Yes |
Quizzes | Yes |
FREE
Stephen L –
The content of this course was informative and very challenging. I definitely learned a few things about pointers in C that I didn’t know before. If this course were on another platform I would give it 5 stars. However, this course isn’t on another platform. It’s on Coursera. I have never had such a frustrating time with any MOOC before this and I’ve completed several of them. The built–in terminal that we used to complete our assignments would often kick me out without any notice. I received no credit for most of my completed assignments due to some bug on Coursera’s end. This bug was first reported months before I started the class and it persisted up until my final week of the course. I think that I completed the course but I’m not sure. It’s tough to be certain when you click the link to view your certificate and it raises an error.
Andrew Z –
Wow! I took my first course that was heavy in C in college and I remember it being challenging. Eight years later, I have to say that C is still a challenging topic! I very much enjoying refreshing knowledge that I learned a very long time ago and had forgotten. I’m also pretty pleased with how much better I am at emacs 🙂 I especially liked the clear introduction of how a program is actually organized in memory. Tail recursion explanation was very interesting as well. One thing that I would love to see improved is some of the testing exercises –– it is easy to get stuck and have several days of progress ruined without really learning anything new. This is small but extremely frustrating. Overall I really appreciate this course and think it was immensely helpful for me in my continuing studies. Very well organized and found the pace of the lectures excellent. Very happy and excited, thanks!
Douglas H –
End of course project was challenging and fun. Lots of opportunity to learn how to debug memory issues with valgrind.
Sehyun P –
difficult project but it was worth it
Leonid P –
Good course, but some homeworks too hard.
Antonio B B A –
I’m at the beginning, but I can assure that is really better than the programming courses in the university. The teachers here are very didactic people as long as allow students to have a complete course. Thanks you all.
kedar h –
amazing awesome
Akhil P –
Great course!!
Dhiego S d S –
Very challenging course.
Alan–Frank V –
.
Alan Frank V –
.
leekibeom –
good
Rameshwar S –
Very well designed hands–on training course for developing a real software program in C.
Fabricio B –
The course itself is great. The grading system is a bit frustrating because you don’t know what the actual tests are. Some idea of what they are actually testing would be a great learning experience.
Deleted A –
good one
Donglai R –
Very bad assignment instructions
Gaston M –
Great course. They did a great job in explaining key concepts like pointers and arrays, which are usual subjects with which students struggle.
Will O –
The course requires 100% perfection in order to move on from one assignment to the next in the course as well as from one course to the next within the specialization. This expectation becomes incredibly challenging based upon 1) the minimal teaching videos, 2) lack of programming examples and practice exercises, 3) requiring students to learn and implement tools not addressed in the lessons (e.g. qsort() and void * variables), and 4) heavily relying upon reading out–of–context selections from a textbook co–written by one of the instructors. The structure of this course consistently poses a problem (see the discussions) when a student struggles to understand the material or cannot figure out how to fix their program, even when submitting screenshots of bugs within the course grader. Too often, the instructors and/or their staff ignore questions and do not always provide feedback to assist the student in understanding why their code does not work (once again see the discussions). These flaws could be overlooked if auditing these courses were an option, but at $49 per month these courses should be designed to enable students to learn foundational concepts without demanding absolute perfection. For students who want to learn C Programming, a much better option would be cs50x and/or C Programming with Linux through edX. Both of these courses can be audited for free and do not possess any of the issues mentioned above.
Quang P B –
Very bad tool use for uploading assignment
Damien E B –
Very tricky. Much trickier than the earlier courses in the specialization. This is to be expected because pointers are slippery. My only complaint would be that the course needs more basic instruction in Git. I ran into some major issues with github and lost hours trying to fix them. Git is a great skills and should be included in the course, but I think we need a little more guidance.
Martin H –
A very good course if you just look at the programming part. But most of the time you try to find testcases what the programmer could have done wrong ( without knowing the course). That’s pure luck and does not help to improve my C skills….
Jimmy K A –
Really nice and the project is really challenging.
Brandon G –
Great course that taught important programming topics.
HITESH G –
great
J K –
I think this is one of the best courses I’ve taken (and that’s including the famous deeplearning.ai trajectory), because it is finally quite difficult, and covers even more advanced topics like function pointers. The best part is the fact that there is also some explanation on the hardware and memory, which make understanding the “why” of choices made more intuitive. The order in which new information is added is spot on, and the assignment are relatively difficult and you really have to focus; tinkering your way through doesn’t work (I was reminded of the saying: “Reading for half an hour, will save you two weeks of trying” As a downside: I HATE emacs in this PPE environment; I’m used to sublime text, and all short–cuts/hotkeys are different. In addition, the ctrl–w, which is for copying (I think) closes the PPE tab, have resulted in lost code, and some cursing from my side. However, all in all: great and I would recommend it to anyone interested in C programming (… or learning Emacs ;))
SAPTARSHI D –
nice course
Levin M J S –
Not making enough effort to help students make sense of the convoluted implementations that they had used.
Christopher N –
The quality of assignments slipped rather abruptly in this course. The assignments were rather unclear, ambiguous and often required reading through forum posts and learning through other people’s frustrated comments. This specialization started strong but the course really slipped in quality. The means of education was inefficient, the presentation of assignments was sloppy and under–specified and the final project was unnecessarily tedious and time–consuming and could have easily been replaced by something else (a different card game such as BlackJack vs Texas Hold ‘Em Poker) delivering the same practice without a lot of the tedious rule generation.
Dehming T –
Learned a lot about pointers and arrays which I admittedly spaced out on in college. There was an assignment of recursion and how to efficiently use it, however it’s use seemed somewhat limited in the final project. This would have been a five star, however the discussion forum response from the instructor team needs to be faster, especially since I’m 99% sure I’m reporting an error and the only staff response was not helpful (and no follow up!, bad business there, especially since the courses are paid, not expensive for American standards, but not all countries make American wages).
Jessica S –
Some concepts a bit complex, but with the exercises, especially with the latest project, everything is clear. It was a challenge and I feel very happy to have finished it. I recommend it.
Charulaxmi F –
Teaches you how to use GDB and debug code effectively. Challenging and engaging homework.
Guo F –
Very good material arrangement and assignment settings!
Jake S –
I really enjoyed the instructors, I just think the course is not structured well for Coursera’s weekly cadence. Learners who expect the time investment to stay the same week–to–week are in for a big surprise when the challenges come at the end of each course. It is as if you are asked to stack two bricks upon each other, then construct the empire state building. Hence the panicked learners in the forums. Thank goodness it is a flexible deadline course.
Thang D D –
Great
Neel P –
awesome .please give more example
Hien D Q –
very useful for me