Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs(CStart): 课程修改为DataWhale立项的CStart #333

Merged
merged 1 commit into from
Oct 31, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# NekoBytes-CS-001 Syllabus
# NekoBytes-CS-001: CStart

## 课程概述

Expand Down Expand Up @@ -56,29 +56,28 @@

### 阅读材料

阅读材料来自[课程教科书](/2.编程模块/2.1%20NekoBytes-TheMissing/2.1.1%20Book/1.引言),可在线免费获取。教科书是可选的,在有歧义的情况下,讲座是事实的主要来源。
阅读材料来自[课程教科书](/2.编程模块/2.1%20CStart/2.1.1%20Book/1.引言),可在线免费获取。教科书是可选的,在有歧义的情况下,讲座是事实的主要来源。

### 作业

会有定期实验任务,大约每周一次。作业可能包括书面问题、工具实践练习、编码任务或更大的完整程序。作业必须单独完成。

## 课程工具

NekoBytes-CS-001 资源的核心来源是课程网站 [hdu-cs-wiki](/2.编程模块/2.1%20NekoBytes-TheMissing/2.1%20NekoBytes-TheMissing)。该网站是你获取课程材料(讲座、作业、部分、考试)以及课程信息的首选。
NekoBytes-CS-001 资源的核心来源是课程网站 [hdu-cs-wiki](/2.编程模块/2.1%20CStart/2.1%20CStart)。该网站是你获取课程材料(讲座、作业、部分、考试)以及课程信息的首选。

### VSCode Config

用于C/C++的VSCode配置文件。

::: tip 📥
配置文件下载 <Download url="https://github.com/E1PsyCongroo/NekoBytes-TheMissing/releases/download/v2024-alpha/C-C++.code-profile"/>
配置文件下载 <Download url="https://github.com/datawhalechina/cstart/releases/download/v2024/C-C++.code-profile"/>
:::

::: warning 🚧 注意
本配置会默认启用 Vim 键位,如果不需要,可以在 VSCode 插件页面找到 Vim 插件手动禁用。
:::


### Linux Setup Tools

这是一个用于初始化 Ubuntu 系统的 Bash 脚本,能够自动完成开发环境的安装与配置。脚本支持静默模式、卸载模式,并通过日志记录操作。
Expand All @@ -92,7 +91,7 @@ NekoBytes-CS-001 资源的核心来源是课程网站 [hdu-cs-wiki](/2.编程模
- 支持静默模式和卸载功能

::: tip 📥
工具下载 <Download url="https://github.com/E1PsyCongroo/NekoBytes-TheMissing/releases/download/v2024-alpha/setup.tar.gz"/>
工具下载 <Download url="https://github.com/datawhalechina/cstart/releases/download/v2024/setup.tar.gz"/>
:::

## 荣誉守则
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Introduction to Computer Science

这是 NekoBytes 计算机科学与技术协会 [NekoBytes-CS-001: Introduction to CS](/2.编程模块/2.1%20NekoBytes-TheMissing/2.1%20NekoBytes-TheMissing.md) 的教科书。它为想要通过编写计算机程序解决复杂问题的学习者奠定强大的编程基础,通过系统学习开发算法,并阅读和编写 C 代码来实现它们,将为从事软件开发或其他计算领域的工作做好准备,并对计算机科学与技术中的常见主题进行了简短的介绍,包括抽象、算法、体系结构、人工智能、嵌入式开发和计算机系统。
这是 NekoBytes 计算机科学与技术协会 [NekoBytes-CS-001: CStart](/2.编程模块/2.1%20CStart/2.1%20CStart) 的教科书。它为想要通过编写计算机程序解决复杂问题的学习者奠定强大的编程基础,通过系统学习开发算法,并阅读和编写 C 代码来实现它们,将为从事软件开发或其他计算领域的工作做好准备,并对计算机科学与技术中的常见主题进行了简短的介绍,包括抽象、算法、体系结构、人工智能、嵌入式开发和计算机系统。

## 你将学到什么

Expand All @@ -18,6 +18,6 @@

## 更正

截至 2024 年夏季,本书仍在积极维护和更新中。
截至 2024 年秋季,本书仍在积极维护和更新中。

如果您发现任何需要更正的部分,请[在此处](https://github.com/camera-2018/hdu-cs-wiki/issues)打开 Github 提交 issue。
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
# VirtualBox 安装 Ubuntu22.04 与系统开发环境配置

> [!INFO]
> 如果使用 VMware,可以参考[这里](/2.编程模块/2.1%20NekoBytes-TheMissing/2.1.1%20Book/2.开发环境配置(VMware).md)的 VMware 版安装教程。
> 如果使用 VMware,可以参考[这里](/2.编程模块/2.1%20CStart/2.1.1%20Book/2.开发环境配置(VMware))的 VMware 版安装教程。

> [!IMPORTANT]
> 什么是 Linux?
>
> 请阅读[Linux 概念普及](/2023旧版内容/3.编程思维体系构建/3.Y.1Linux概念普及.md)
> 请阅读[Linux 概念普及](/2023旧版内容/3.编程思维体系构建/3.Y.1Linux概念普及)
>
> 虚拟机太卡了我不喜欢?
>
> 请阅读[双系统安装指南](/2023旧版内容/3.编程思维体系构建/3.Y.2双系统安装和发行版推荐.md)
> 请阅读[双系统安装指南](/2023旧版内容/3.编程思维体系构建/3.Y.2双系统安装和发行版推荐)

## 0. 下载系统初始化工具和 VSCode 配置文件

请在[课程主页](/2.编程模块/2.1%20NekoBytes-TheMissing/2.1%20NekoBytes-TheMissing)下方“课程工具”中下载。
请在[课程主页](/2.编程模块/2.1%20CStart/2.1%20CStart)下方“课程工具”中下载。

## 1. 下载安装 VirtualBox

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## 0.下载系统初始化工具和 VSCode 配置文件

请在[课程主页](/2.编程模块/2.1%20NekoBytes-TheMissing/2.1%20NekoBytes-TheMissing.md)下方 “课程工具” 中下载。
请在[课程主页](/2.编程模块/2.1%20CStart/2.1%20CStart.md)下方 “课程工具” 中下载。

## 1.下载安装 VMware

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## 0.下载系统初始化工具和 VSCode 配置文件

请在[课程主页](/2.编程模块/2.1%20NekoBytes-TheMissing/2.1%20NekoBytes-TheMissing.md)下方 “课程工具” 中下载。
请在[课程主页](/2.编程模块/2.1%20CStart/2.1%20CStart)下方 “课程工具” 中下载。

## 1.启用 WSL 并安装 Ubuntu

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -374,7 +374,7 @@ A,B 各由 32 根数据线输入到器件中,输出 32 位结果
### 操作系统仿真(拓展)

> [!TIP]
> 获取代码: https://e1psycongroo.github.io/NekoBytes-TheMissing/_site/resources/Lecture3/Codes/os-model
> 获取代码: https://datawhalechina.github.io/cstart/_site/resources/Lecture3/Codes/os-model

下面我们来通过一个简单的模型来体验并发。

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# 算法导论

> [!TIP]
> 获取本讲代码: <https://e1psycongroo.github.io/NekoBytes-TheMissing/_site/resources/Lecture4/Codes/>
> 获取本讲代码: <https://datawhalechina.github.io/cstart/_site/resources/Lecture4/Codes/>
>
> 一个[可视化 C 语言语句的小工具](https://pythontutor.com/c.html#mode=edit), 请利用工具高效学习

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
尝试使用 git clone 克隆 Lab1 仓库

```bash
git clone -b master --depth 1 https://github.com/E1PsyCongroo/NekoBytes-TheMissing.git
git clone -b master --depth 1 https://github.com/datawhalechina/cstart.git
```

> [!WARNING]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,24 +75,23 @@
```C
#include <stdio.h>
int fibonacci(int n) {
if (n < 1) {
return -1;
}
if (n == 1 || n == 2) {
return 1;
}
else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
if (n < 1) {
return -1;
}
if (n == 1 || n == 2) {
return 1;
}
else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}

int main(void)
{
int a;
while (scanf("%d", &a) != EOF) {
printf("Fibonacci数列第%d项为:%d\n", a, fibonacci(a));
}
return 0;
int main(void) {
int a;
while (scanf("%d", &a) != EOF) {
printf("Fibonacci数列第%d项为:%d\n", a, fibonacci(a));
}
return 0;
}
```

Expand Down Expand Up @@ -126,7 +125,7 @@
```

- 使用`printBoard(int board[N][N])`函数打印数独
- 使用`isSafe(int board[N][N], int row, int col, int num)`函数检查数字是否可以放在 board[row][col]位置。
- 使用`isSafe(int board[N][N], int row, int col, int num)`函数检查数字是否可以放在 board\[row\]\[col\]位置。
- 运行 judge.sh 检测程序正确性。

- 完成文件`sudoku.c`中的`solveSudoku`函数编写。
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@

我们本来不想介绍这个内容,但是还是要问问:你们知道 Git 吗?你们知道 Github 吗?

如果你发现自己不会,赶紧看我们的前文提到的内容,这里有 Git 的简介 [2.1.1 Book: 3.Unix 与 C](../../../2.编程模块/2.1%20NekoBytes-TheMissing/2.1.1%20Book/3.Unix与C.md),这里是不会赘述的。
如果你发现自己不会,赶紧看我们的前文提到的内容,这里有 Git 的简介 [2.1.1 Book: 3.Unix 与 C](../../../2.编程模块/2.1%20CStart/2.1.1%20Book/3.Unix与C.md),这里是不会赘述的。

如果没有问题,下一节。
如果没有问题,下一节。
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# NekoBytes-CS-001 Syllabus

## 对应课程
[C语言——NekoBytes-TheMissing](../../2.编程模块/2.1%20NekoBytes-TheMissing/2.1%20NekoBytes-TheMissing.md)
[C语言——NekoBytes-TheMissing](../../2.编程模块/2.1%20CStart/2.1%20CStart.md)

## 日程表

Expand Down
38 changes: 19 additions & 19 deletions components/CourseTable.vue
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,9 @@ const courses = [
lecture: {
title: "0. 编程环境搭建",
links: {
slide: "https://e1psycongroo.github.io/NekoBytes-TheMissing/Lectures/Lecture0/Lecture0/index.html",
slide: "https://datawhalechina.github.io/cstart/Lectures/Lecture0/Lecture0/index.html",
recording: "https://www.bilibili.com/video/BV1rgxae2Eio",
note: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.1 Book/2.开发环境配置",
note: "/2.编程模块/2.1 CStart/2.1.1 Book/2.开发环境配置",
code: "",
},
},
Expand All @@ -83,15 +83,15 @@ const courses = [
lecture: {
title: "1. Unix 与 C",
links: {
slide: "https://e1psycongroo.github.io/NekoBytes-TheMissing/Lectures/Lecture1/Lecture1/index.html",
slide: "https://datawhalechina.github.io/cstart/Lectures/Lecture1/Lecture1/index.html",
recording: "https://www.bilibili.com/video/BV1rgxae2Eio",
note: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.1 Book/3.Unix与C",
code: "https://e1psycongroo.github.io/NekoBytes-TheMissing/_site/resources/Lecture1/Codes"
note: "/2.编程模块/2.1 CStart/2.1.1 Book/3.Unix与C",
code: "https://datawhalechina.github.io/cstart/_site/resources/Lecture1/Codes"
},
},
lab: {
title: "Lab1: Unix 与 C",
link: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.2 Lab/1.Lab1",
link: "/2.编程模块/2.1 CStart/2.1.2 Lab/1.Lab1",
},
project: {
title: "No Project",
Expand Down Expand Up @@ -133,15 +133,15 @@ const courses = [
lecture: {
title: "2. C 语言基础语法",
links: {
slide: "https://e1psycongroo.github.io/NekoBytes-TheMissing/Lectures/Lecture2/Lecture2/index.html",
slide: "https://datawhalechina.github.io/cstart/Lectures/Lecture2/Lecture2/index.html",
recording: "https://www.bilibili.com/video/BV1ri2dYUEG8",
note: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.1 Book/4.C语言基础语法",
code: "https://e1psycongroo.github.io/NekoBytes-TheMissing/_site/resources/Lecture2/Codes"
note: "/2.编程模块/2.1 CStart/2.1.1 Book/4.C语言基础语法",
code: "https://datawhalechina.github.io/cstart/_site/resources/Lecture2/Codes"
},
},
lab: {
title: "Lab2: C 语言基础语法",
link: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.2 Lab/2.Lab2",
link: "/2.编程模块/2.1 CStart/2.1.2 Lab/2.Lab2",
},
project: {
title: "No Project",
Expand All @@ -158,15 +158,15 @@ const courses = [
lecture: {
title: "3. 计算机的硬件视角",
links: {
slide: "https://e1psycongroo.github.io/NekoBytes-TheMissing/Lectures/Lecture3/Lecture3/index.html",
slide: "https://datawhalechina.github.io/cstart/Lectures/Lecture3/Lecture3/index.html",
recording: "https://www.bilibili.com/video/BV1DJypYeEfN",
note: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.1 Book/5.计算机的硬件视角",
code: "https://e1psycongroo.github.io/NekoBytes-TheMissing/_site/resources/Lecture3/Codes"
note: "/2.编程模块/2.1 CStart/2.1.1 Book/5.计算机的硬件视角",
code: "https://datawhalechina.github.io/cstart/_site/resources/Lecture3/Codes"
},
},
lab: {
title: "Lab3: 体验嵌入式",
link: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.2 Lab/3.Lab3",
link: "/2.编程模块/2.1 CStart/2.1.2 Lab/3.Lab3",
},
project: {
title: "No Project",
Expand All @@ -183,15 +183,15 @@ const courses = [
lecture: {
title: "4. 算法导论",
links: {
slide: "https://e1psycongroo.github.io/NekoBytes-TheMissing/Lectures/Lecture4/Lecture4/index.html",
recording: "",
note: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.1 Book/6.算法导论",
code: "https://e1psycongroo.github.io/NekoBytes-TheMissing/_site/resources/Lecture4/Codes"
slide: "https://datawhalechina.github.io/cstart/Lectures/Lecture4/Lecture4/index.html",
recording: "https://www.bilibili.com/video/BV1X9SJYGEme",
note: "/2.编程模块/2.1 CStart/2.1.1 Book/6.算法导论",
code: "https://datawhalechina.github.io/cstart/_site/resources/Lecture4/Codes"
},
},
lab: {
title: "Lab4: 算法入门",
link: "/2.编程模块/2.1 NekoBytes-TheMissing/2.1.2 Lab/4.Lab4",
link: "/2.编程模块/2.1 CStart/2.1.2 Lab/4.Lab4",
},
project: {
title: "No Project",
Expand Down
Loading
Loading