CS50-简介

[TOC]

CS 50 简介

Lecture Main
Week 0 Scratch
Week 1 C
C,continued
Week 2 Algorithms
Week 3 Memory
Week 4 Data Structures
Week 5 HTTP
Week 6 Dynamic Programming
Python
Week 7 Python, continued
Week 8 Scratch
Week 9 SQL
Week 10 JavaScript
Week 11 The End

参考-cs50.net
project5050
cs50.io, cs50 线上 IDE

学习途径

  • 直接在 YouTube 上观看
    • 优点: 可以同步中文字幕
    • 缺点:只有视频而已
  • edx 上观看
    • 优点:有课程大纲以及英文字幕(字幕不是一句一句的,是整个的)
    • 缺点:没有中文字幕
  • cs50.tv, 这里有源码、ppt、视频等资源供下载

OK,主要就是上面的三个资源了。

CS50 Library

在学习到第二节课——C语言的时候,需要用到 cs50.h 这个库。最简单的方式质直接登入cs50.io,线上的 IDE,但是这需要又网络,而且程序必须保存到线上的 IDE 环境中,无法再本地进行编译,那么如何使得在本机上开发也可以引入 cs50.h 呢?

  • 找到 cs50/libcs50 git 仓库
  • 下载 -> 解压 -> cd libcs50 -> sudo make intall(详细安装可以看 git 的 readme 文件)
  • 安装完成只有,在开发的 c 文件中引入 #include 就 OK 了
  • 可以通过 man get_string 本地查看文档,也可以通过 reference.cs50.net/cs50 在线查看文档,推荐线上查看比较清晰

test.c 内容:

1
2
3
4
5
6
7
8
#include <cs50.h>
#include<stdio.h>

int main()
{
int number = get_int("input: ");
printf("hello %d",number);
}

运行:

1
2
3
4
$clang test.c -lcs50
$./a.out
$input: 12
$hello 12

注意:

  • 头文件引入,按照字母顺序,方便查找
  • clang 编译的时候需要加上 -lcs50

学习资源

  1. edx 学院, 视频,字幕
  2. [cs50.tv] (http://cs50.tv/2017/fall/) 主要是资源的下载,代码下载
  3. 中文解读
  4. short
  5. YouTube
  6. manual.cs50.net
  7. reference.cs50.net/cs50
  8. github.com/cs50/libcs50
-------------本文结束谢谢欣赏-------------
Alice wechat