|
1 | 1 | # The-C-Programming-Language-2nd-Edition |
2 | 2 | Source code and solutions of exercises to _The C Programming Language 2nd Edition by Brian W. Kernighan and Dennis M. Ritchie_ |
| 3 | + |
| 4 | +## Exercises: |
| 5 | + |
| 6 | +### 1. Introduction |
| 7 | +1. [1-1](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/1.hello.c) |
| 8 | +1. [1-2](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/2.hello.c) |
| 9 | +1. [1-3](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/5.celsius-fahrenheit-table.c) |
| 10 | +1. [1-4](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/5.celsius-fahrenheit-table.c) |
| 11 | +1. [1-5](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/7.fahrenheit-celsius-table-reverse.c) |
| 12 | +1. [1-6](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/11.file-copying-3rd.c) |
| 13 | +1. [1-7](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/12.print-eof.c) |
| 14 | +1. [1-8](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/16.space-tab-line-counting.c) |
| 15 | +1. [1-9](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/17.repalce-multi-space.c) |
| 16 | +1. [1-10](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/18.replace-tab-backspace-backslash.c) |
| 17 | +1. 1-11 skipped |
| 18 | +1. [1-12](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/20.print-words.c) |
| 19 | +1. 1-13 |
| 20 | + * [horizontal](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/22.words-length-histogram-horizontal.c) |
| 21 | + * [vertical](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/23.words-length-histogram-vertical.c) |
| 22 | +1. [1-14](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/24.characters-frequencies-histogram.c) |
| 23 | +1. [1-15](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/26.fahrenheit-celsius-table-function.c) |
| 24 | +1. [1-16](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/28.print-input-line-and-text.c) |
| 25 | +1. [1-17](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/29.print-length-80-line.c) |
| 26 | +1. [1-18](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/30.remove-line-end-space-and-tab.c) |
| 27 | +1. [1-19](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/31.reverses.c) |
| 28 | +1. [1-20](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/33.detab.c) |
| 29 | +1. [1-21](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/34.entab.c) |
| 30 | +1. [1-22](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/35.fold-line.c) |
| 31 | +1. [1-23](https://github.com/Heatwave/The-C-Programming-Language-2nd-Edition/blob/master/chapter-1-introduction/36.remove-comments.c) |
| 32 | +1. 1-24 skipped |
| 33 | + |
| 34 | +### 2. Types operators expressions |
| 35 | +1. [2-1](./chapter-2-types-operators-expressions/1.ranges-of-variables.c) |
| 36 | +1. [2-2](./chapter-2-types-operators-expressions/2.loop-without-logical-operators.c) |
| 37 | +1. [2-3](./chapter-2-types-operators-expressions/3.atoi.c) |
| 38 | +1. [2-4](./chapter-2-types-operators-expressions/8.squeeze2.c) |
| 39 | +1. [2-5](./chapter-2-types-operators-expressions/9.any.c) |
| 40 | +1. [2-6](./chapter-2-types-operators-expressions/11.setbits.c) |
| 41 | +1. [2-7](./chapter-2-types-operators-expressions/12.invert.c) |
| 42 | +1. [2-8](./chapter-2-types-operators-expressions/13.rightrot.c) |
| 43 | +1. [2-9](./chapter-2-types-operators-expressions/15.bitcount2.c) |
| 44 | +1. [2-10](./chapter-2-types-operators-expressions/16.lower2.c) |
| 45 | + |
| 46 | +### 3. Control flow |
| 47 | +1. [3-1](./chapter-3-control-flow/01.binsearch.c) |
| 48 | +1. 3-2 |
| 49 | + * [escape](./chapter-3-control-flow/03.escape.c) |
| 50 | + * [unescape](./chapter-3-control-flow/04.unescape.c) |
| 51 | +1. [3-3](./chapter-3-control-flow/08.expand.c) |
| 52 | +1. [3-4](./chapter-3-control-flow/09.itoa.c) |
| 53 | +1. [3-5](./chapter-3-control-flow/10.itob.c) |
| 54 | +1. [3-6](./chapter-3-control-flow/11.itoa.c) |
| 55 | + |
| 56 | +### 4. Functions and program structure |
| 57 | +1. [4-1](./chapter-4-functions-and-program-structure/2.strrindex.c) |
| 58 | +1. [4-2](./chapter-4-functions-and-program-structure/3.atof-test.c) |
| 59 | +1. [4-3, 4-3, 4-5, 4-6](./chapter-4-functions-and-program-structure/4.reverse-polish-calculator.c) |
| 60 | +1. [4-7](./chapter-4-functions-and-program-structure/getch.c) |
| 61 | +1. [4-8](./chapter-4-functions-and-program-structure/getch.c) |
| 62 | +1. 4-9 skipped |
| 63 | +1. 4-10 skipped |
| 64 | +1. [4-11](./chapter-4-functions-and-program-structure/5.getop-with-static.c) |
| 65 | +1. [4-12](./chapter-4-functions-and-program-structure/9.itoa-recursive.c) |
| 66 | +1. [4-13](./chapter-4-functions-and-program-structure/10.reverse.recursive.c) |
| 67 | +1. [4-14](./chapter-4-functions-and-program-structure/11.swap-macro.c) |
| 68 | + |
| 69 | +### 5. pointers and arrays |
| 70 | +1. [5-1](./chapter-5-pointers-and-arrays/3.getint.c) |
| 71 | +1. [5-2](./chapter-5-pointers-and-arrays/4.getfloat.c) |
| 72 | +1. [5-3](./chapter-5-pointers-and-arrays/15.strcat-pointer.c) |
| 73 | +1. [5-4](./chapter-5-pointers-and-arrays/16.strend.c) |
| 74 | +1. 5-5 |
| 75 | + * [strcpy](17.strncpy.c) |
| 76 | + * [strncat](18.strncat.c) |
| 77 | + * [strncmp](19.strncmp.c) |
| 78 | +1. [5-6](./chapter-5-pointers-and-arrays/20.getline-pointer.c) |
| 79 | +1. [5-7](./chapter-5-pointers-and-arrays/24.pointer-arrays-without-alloc.c) |
| 80 | +1. [5-8](./chapter-5-pointers-and-arrays/27.year-month-day-pointer.c) |
| 81 | +1. [5-9](./chapter-5-pointers-and-arrays/27.year-month-day-pointer.c) |
| 82 | +1. [5-10](./chapter-5-pointers-and-arrays/32.expr.c) |
| 83 | +1. 5-11 |
| 84 | + * [detab](./chapter-5-pointers-and-arrays/33.detab.c) |
| 85 | + * [entab](./chapter-5-pointers-and-arrays/34.entab.c) |
| 86 | +1. 5-12 |
| 87 | + * [detab](./chapter-5-pointers-and-arrays/35.detab-arg.c) |
| 88 | + * [entab](./chapter-5-pointers-and-arrays/36.entab-arg.c) |
| 89 | +1. [5-13](./chapter-5-pointers-and-arrays/37.tail.c) |
| 90 | +1. [5-14](./chapter-5-pointers-and-arrays/39.sort-with-r.c) |
| 91 | +1. [5-15](./chapter-5-pointers-and-arrays/40.sort-with-f.c) |
| 92 | +1. [5-16](./chapter-5-pointers-and-arrays/41.sort-with-d.c) |
| 93 | +1. 5-17 skipped |
| 94 | +1. [5-18](./chapter-5-pointers-and-arrays/43.dcl-error-handle.c) |
| 95 | +1. [5-19](./chapter-5-pointers-and-arrays/44.undcl.c) |
| 96 | +1. 5-20 skipped |
| 97 | + |
| 98 | +### 6. structures |
| 99 | +1. [6-1](./chapter-6-structures/3.getword.c) |
| 100 | +1. [6-2](./chapter-6-structures/6.variables-group.c) |
| 101 | +1. [6-3](./chapter-6-structures/7.words-appear-lines.c) |
| 102 | +1. 6-4 skipped |
| 103 | +1. [6-5](./chapter-6-structures/) |
| 104 | +1. [6-6](./chapter-6-structures/) |
0 commit comments