“程序设计基础辅导”的版本间的差异
来自问题求解
小 (→学习周历) |
小 (→参考教材) |
||
(未显示同一用户的26个中间版本) | |||
第3行: | 第3行: | ||
== 参考教材 == | == 参考教材 == | ||
− | * K&R: [[Media:The_C_Programming_Language_(2nd_Edition_Ritchie_Kernighan).pdf | The C Programming Language (2nd Edition)]], Brian Kernighan and Dennis | + | * K&R: [[Media:The_C_Programming_Language_(2nd_Edition_Ritchie_Kernighan).pdf | The C Programming Language (2nd Edition)]], Brian Kernighan and Dennis Ritchie [建议通读; 有基础的同学可以直接阅读1,5,6,7章; 附录可暂不阅读] |
+ | * RR: [[Media: Understanding_and_Using_C_Pointers_(Richard_Reese).pdf | Understanding and Using C Pointers]], Richard Reese [建议通读; 重点在前六章,理解C语言程序(尤其是涉及指针的部分)的内存模型,掌握使用指针实现常用数据结构的方法] | ||
* C++ 教材待定 | * C++ 教材待定 | ||
== 参考资料 == | == 参考资料 == | ||
+ | 常用C/C++语言参考网站 ((好的)搜索引擎经常会导向这些网站。通过反复查阅,熟悉常用类、常用方法、惯用法等。): | ||
* http://www.cplusplus.com/ | * http://www.cplusplus.com/ | ||
* http://en.cppreference.com/w/c | * http://en.cppreference.com/w/c | ||
* http://en.cppreference.com/w/ | * http://en.cppreference.com/w/ | ||
+ | C/C++编码标准 (遵循编码标准,代码更简洁、更易维护、更不易出错。): | ||
* [https://users.ece.cmu.edu/~eno/coding/CCodingStandard.html C Coding Standard] | * [https://users.ece.cmu.edu/~eno/coding/CCodingStandard.html C Coding Standard] | ||
* [https://users.ece.cmu.edu/~eno/coding/CppCodingStandard.html C++ Coding Standard] | * [https://users.ece.cmu.edu/~eno/coding/CppCodingStandard.html C++ Coding Standard] | ||
+ | * [https://google.github.io/styleguide/cppguide.html Google C++ Style Guide] | ||
== 学习周历 == | == 学习周历 == | ||
第22行: | 第26行: | ||
| style="width: 75px;" | 2017-10-20 | | style="width: 75px;" | 2017-10-20 | ||
| | | | ||
− | + | 1-1: IO (C 语言) | |
+ | * IO in C | ||
+ | [[Media:1-1-io.pdf |1-1-io.pdf]] ([[Media:1-1-io-handout.pdf|1-1-io-handout.pdf]]) | ||
| | | | ||
* K&R: Chapter 7 | * K&R: Chapter 7 | ||
+ | * K&R: Chapter 2 (自学) | ||
| | | | ||
− | * | + | * [http://acm.hdu.edu.cn/ HDOJ/ACM Steps:] Chapter 1, Section 1 |
− | * | + | * [http://acm.hdu.edu.cn/ HDOJ/ACM Steps:] Chapter 2, Section 2, Problem 1 |
|- | |- | ||
| 2017-10-27 | | 2017-10-27 | ||
| | | | ||
+ | 1-2: The Josephus Puzzle: | ||
* Control Flow, Function, and Array | * Control Flow, Function, and Array | ||
+ | [[Media:1-2-josephus.pdf | 1-2-josephus.pdf]] ([[Media:1-2-josephus-handout.pdf|1-2-josephus-handout.pdf]]) | ||
| | | | ||
* K&R: Chapters 3, 4 | * K&R: Chapters 3, 4 | ||
| | | | ||
− | * | + | * [http://acm.hdu.edu.cn/ HDOJ/ACM Steps:] Chapter 1, Section 2 |
|- | |- | ||
− | | 2017-11- | + | | 2017-11-03 |
| | | | ||
− | * Pointer and Array | + | 1-3: The Tromino Tiling Puzzle: |
+ | * Memory, Pointer, and Array | ||
+ | * Recursion | ||
+ | [[Media:1-3-tromino-tiling.pdf | 1-3-tromino-tiling.pdf]] ([[Media:1-3-tromino-tiling-handout.pdf|1-3-tromino-tiling-handout.pdf]]) | ||
| | | | ||
− | * | + | * K&R: Chapters 2, 5 |
| | | | ||
− | * | + | * 无 |
+ | |- | ||
+ | | 2017-11-10 | ||
+ | | | ||
+ | 1-4: The Josephus Puzzle (Revisited): | ||
+ | * Struct | ||
+ | * Linked-List | ||
+ | [[Media:1-4-josephus-linkedlist.pdf | 1-4-josephus-linkedlist.pdf]] ([[Media:1-4-josephus-linkedlist-handout.pdf|1-4-josephus-linkedlist-handout.pdf]]) | ||
+ | | | ||
+ | * K&R: Chapters 6 | ||
+ | | | ||
+ | * [http://acm.hdu.edu.cn/ HDOJ/ACM Steps:] Chapter 1, Section 3 | ||
+ | |- | ||
+ | | 2017-11-24 | ||
+ | | | ||
+ | 1-5: | ||
+ | * Function Pointer | ||
+ | * C Standard Library | ||
+ | [[Media:1-5-c-library.pdf|1-5-c-library.pdf]] ([[Media:1-5-c-library-handout.pdf|1-5-c-library-handout.pdf]]) | ||
+ | | | ||
+ | * K&R: Section 5.11 | ||
+ | * K&R: Appendix B | ||
+ | | | ||
+ | * | ||
+ | |- | ||
+ | | 2017-12-01 | ||
+ | | | ||
+ | 1-6: Elements of Programming Style | ||
+ | |||
+ | [[Media:1-6-style.pdf | 1-6-style.pdf]] ([[Media:1-6-style-handout.pdf|1-6-style-handout.pdf]]) | ||
+ | | | ||
+ | * [https://users.ece.cmu.edu/~eno/coding/CCodingStandard.html C Coding Standard] | ||
+ | * [https://youtu.be/8SUkrR7ZfTA Video: Elements of Programming Style (Brian Kernighan)] | ||
+ | | | ||
+ | * | ||
|} | |} | ||
+ | |||
+ | 待定论题: | ||
+ | * A Tour of C++ |
2018年1月3日 (三) 19:55的最新版本
学习目标
- 掌握C/C++程序设计语言
参考教材
- K&R: The C Programming Language (2nd Edition), Brian Kernighan and Dennis Ritchie [建议通读; 有基础的同学可以直接阅读1,5,6,7章; 附录可暂不阅读]
- RR: Understanding and Using C Pointers, Richard Reese [建议通读; 重点在前六章,理解C语言程序(尤其是涉及指针的部分)的内存模型,掌握使用指针实现常用数据结构的方法]
- C++ 教材待定
参考资料
常用C/C++语言参考网站 ((好的)搜索引擎经常会导向这些网站。通过反复查阅,熟悉常用类、常用方法、惯用法等。):
C/C++编码标准 (遵循编码标准,代码更简洁、更易维护、更不易出错。):
学习周历
日期 | 论题 | 阅读材料 | 编程任务 |
---|---|---|---|
2017-10-20 |
1-1: IO (C 语言)
|
|
|
2017-10-27 |
1-2: The Josephus Puzzle:
|
|
|
2017-11-03 |
1-3: The Tromino Tiling Puzzle:
|
|
|
2017-11-10 |
1-4: The Josephus Puzzle (Revisited):
1-4-josephus-linkedlist.pdf (1-4-josephus-linkedlist-handout.pdf) |
|
|
2017-11-24 |
1-5:
|
|
|
2017-12-01 |
1-6: Elements of Programming Style |
|
待定论题:
- A Tour of C++