 Despite its low-level capabilities, the language was designed to encourage cross-platform programming.A standards-compliant C program written with portability in mind can be compiled for a wide variety of computer platforms and operating systems with few changes to its source code.Like most procedural languages in the ALGOL tradition, C has facilities for structured programming and allows lexical variable scope and recursion.