Narayan wrote: > any one . > friends i want problems and solution assignmetns on c. > i am teacher of computer subject and i teach c programing but i have no > collection of program. > > So anyone please help me. > > Regards > Narayan Dabhadkar. > Saksham Computers
It is generally understood that one of the requirements of being a teacher is to come up with your own lesson plans. It is your class, your subject, and your students. I'm pretty sure this is where the other (rather rude) replies are coming from. However, since you are asking, I'm going to provide a set of guidelines of what you should strive for and the sorts of things to avoid: In an introductory course to the topic, cover the basics. Cover and test students on how variables are assigned, basic if-else if-else logic, while and do-while loops, and string, array, and file manipulation. You really should be teaching C++ because then you can avoid teaching pointers early on in the course. All of the above (and much, much more) can be done without ever seeing a pointer reference. Pointers are an advanced topic. I know a lot of teachers like to require students to learn how to write a linked list, various useless sorting algorithms (e.g. bubble sort), or other such nonsense. This group's view is that such exercises are a waste of everyone's time - a waste of your time, your students' time, and any groups (e.g. c-prog) that end up having to deal with your class exercises (i.e. your students WILL search the Internet looking for help/answers). You should encourage your students to utilize third-party and Standard libraries wherever possible. Need access to a database? Link against the MySQL client library, write some code to use the library, done. Grab a webpage? No problem - link in cURL, write some code to use the library, done. Need a linked list? Use std::list. Need to sort some stuff? std::sort. Need a GUI? wxWidgets is a pretty good starting point. If someone asks how to do what those libraries do without the library, mention that the libraries generally take care of the nitty-gritty details BUT point them at relevant Standards (e.g. RFC2616) and/or documentation and just be a great resource for learning on their own (mention c-prog! We are a great resource too!). Teach your students about the various types of software licenses that are out there (GPL, LGPL, BSD, MIT, commercial, etc.) and what circumstances you can use the associated software in (what licenses are compatible with each other). Teach them how to quickly find answers to questions - Google, Wikipedia, YahooGroups, CodeProject, etc. Such an approach will reduce the load on your shoulders AND give them proper training on how to get answers to questions. Require test suites (both automated and manual) for software developed. It is rather irresponsible of teachers to teach how to write linked lists over and over again semester after semester, year after year and not provide the tools to students that they can actually use in the workforce. Professional developers use libraries of pre-built code for doing common tasks. Your goal should be to teach skills they can use so they are the person that other people come to for information and so that they can figure out how to do things on their own. As to test questions, here are a couple ideas: Use functions from open source software to ask questions on tests as to what the code is doing, what is its purpose and where those functions are likely called from, any obvious bugs/nuisances, and how the code could be improved. Another idea would be to show two different versions of functions from open source code which previously had a security exploit, describe the security exploit that was fixed, and require students to describe test cases that will test the patched code to make sure the exploit doesn't happen again. These types of questions are infinitely better than "Write a for loop that displays a pyramid" because they are practical. Students see the merit of such activities and therefore will take an interest in the topic. The purpose of school is to prepare students for the workplace with, in this case, the best coding practices possible under their belt. Your tests and exercises should reflect this goal. In addition, require every one of your students to obtain a copy of the ANSI C/C++ Standard. They are the technical documents upon which every C/C++ compiler is based and MUST adhere to in order to claim Standard compliance. The books you teach from should likewise adhere to the Standard. In other words, don't use "Let Us C" as the book you teach from (non-Standard, recommends Turbo C). -- Thomas Hruska CubicleSoft President Ph: 517-803-4197 *NEW* MyTaskFocus 1.1 Get on task. Stay on task. http://www.CubicleSoft.com/MyTaskFocus/
