|This page is currently undergoing major edits. Content that is added is likely to be moved/deleted/edited significantly in a short amount of time. All Wikiversitians with knowledge in this subject are welcome to help.|
Welcome to the Wikiversity content-development project for the C computer language, part of the Division of Computer Programming.
C is one of the most widely used programming languages in the world. Therefore, C is a common choice for people wanting to learn how to program. This course assumes no previous programming experience and will guide you through all of the aspects of programming in C.
The course will roughly follow the C Programming book at Wikibooks as well as provide supplementary reading material for each lesson primarily through Wikipedia. Exercises will be given at the end of each course along with possible solutions. It is highly recommended that all of the exercises be worked because programming is learned by doing not just reading.
Note to Students and Prospective Contributors
It has been some time since this course has been updated and expanded on, and for some unknown reason I have a desire to start to work on it. The original author assumed the student would be using Turbo C. Since the online community is much more diverse on the types of operating systems in use, I feel it is more relevant to show examples and exercises using a number of different compilers and OSs (Clang for FreeBSD, GCC for Linux, Dev-C++ with MinGW for Windows, GCC and XCode for the Mac OS, and Ideone are my choices). Another alternative is Visual Studio Express 2012 which can be found here - http://www.microsoft.com/visualstudio/eng/downloads#d-2012-express
Basically, the lessons are currently being updated and reworked.
Those wanting to contribute to this course should also help develop the C Programming book at Wikibooks. Wikiversity learning resources should not take the form of a general encyclopedia article, textbook or manual: Wikiversity is for other types of learning resources. Wikiversity has a "learn by doing" approach to e-learning, so learning projects are particularly useful. Design activities and projects for Wikiversity participants and attempt to establish a collaborative learning environment.
- Before you start
- Basic Output
- Variables and Expressions
- Data Types and Keywords
- Type Qualifiers
- Storage Classes
- Flow Control
- Functions and Methods
- Pointers and Arrays
- Input and Output
- C Source Codes
- C Preprocessors
- Game programming using C
- Memory Management
- "Programming Language Popularity". 2009. Retrieved 16 January 2009.