Git Product home page Git Product logo

programming-tutorial-2019's Introduction

programming-tutorial-2019

本项目是一个简易的C/C++编程指南,为南京大学计算机系问题求解课程2019级学生准备。往届的编程指南见problem-solving-class-programming-tutorial

项目分为3个子项目:CodeSlidesTutorial,使用cmake管理,可以用CLion打开查看。

教程所用到的示例代码。

oj: 提供了一个管理 OJ 的 CMakeLists.txt 模板。也可以下载这个压缩包

redirect: 方便调试的输入输出重定向函数,使用样例 example_c

pointer: 第三次线下辅导 用到的源代码,参考了 Pointers - C++ Tutorials

struct: 第四次线下辅导 用到的源代码。

my_malloc: 第四次线下辅导 的链表小实验, 实现malloc。

io: 第五次线下辅导 用到的源代码。

线下讲解程序设计的PPT源代码,使用了 beamer 的 mtheme 主题。目录内只有源代码没有pdf,pdf下载见下面的表格:

日期 主题 文件
2019-10-25 环境搭建和C语言入门 introduction.pdf
2019-11-01 调试技巧, 函数和数组 function_array.pdf
2019-11-08 指针和动态内存 pointer_memory.pdf
2019-11-16 结构体和malloc实现 struct_malloc.pdf
2019-11-22 文件输入输出 io.pdf

使用markdown编写,可以用 gitbook-cli 生成 html。目录内只有 markdown 没有 html,可以直接在Github上浏览(目录),也可以打开 problemoverflow.top/c

编译

本工程使用了cmake,很方便编译 exe, pdf 和 html。

git clone https://github.com/tangruize/programming-tutorial-2019  # 需安装git
cmake -S . -B build  # 初始化cmake,需安装cmake和make
cd build
make  # 编译OJ的例子,需安装cc和c++编译器,比如gcc和g++
make -j4  # 同上,但同时使用4个线程编译 
make -j4 slides  # 编译latex,需安装texlive、latexmk 和 xelatex
make gitbook  # 生成gitbook的html并在本地打开4000端口服务器,需安装gitbook-cli

programming-tutorial-2019's People

Contributors

tangruize avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

kennycaiguo

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.