软件工程本科生宝典
首页/四年规划/大一上学期
第 1 学年 · 第 1 学期

大一上学期学习规划

打牢数理与编程地基,完成从刷题型高中生到会写代码的大学生的心态转变

本学期主题

打牢数理与编程地基,完成从刷题型高中生到会写代码的大学生的心态转变

🧭总览

大一上学期的核心任务其实只有三件事:把高等数学和线性代数的地基打牢,把C语言学成真正能动手写程序的语言,以及完成从被动刷题型高中生到主动自学的「程序员」心态切换。时间分配上,建议每周课外投入28到35小时:数学约40%、编程实践约30%、英语约15%、其余给通识课、社团与运动。目标水平:期末高数不低于80分(想保研要85分以上),能独立用C写出200行以内、带数组、函数和指针的小程序,能熟练使用命令行、Git和一款代码编辑器。最常见的错误是:把C语言当考试科目背语法却从不亲手敲代码;高数只刷课后题不按题型总结;英语直接放弃,结果大二连四级都过不了;被社团和游戏掏空大部分时间。记住一句话:大学的分数是给保研和出国交换用的,代码能力才是给工作用的,两者都要,不能偏废。

📘课程安排与学习重点

共 8 门。每门课的完整学习引导(教材、网课、实践、面试考法)可在课程库中查看。

高等数学A(上)

数学基础5学分/80学时
📌 课程定位

高等数学是整个工科数学的地基,极限、导数、微分中值定理、不定积分与定积分是后续概率论、最优化、信号处理、机器学习、图形学的共同前置。软件工程虽然不直接考数学计算,但推公式、看英文论文、理解算法复杂度与梯度下降都依赖这门课。真正的重点不是「会算题」,而是建立「极限—连续—可导—可积」的完整逻辑链条,并养成严格推导、写清楚步骤的习惯。

✅ 必须掌握
  • 极限与连续的定义及洛必达法则、等价无穷小替换
  • 导数与微分的几何意义及全部求导法则
  • 罗尔/拉格朗日/柯西中值定理的应用
  • 不定积分与定积分的计算技巧(换元、分部)
  • 定积分的几何应用(面积、旋转体体积)
✍️ 怎么学(含目标分数与刷题量)

教材用同济大学《高等数学》第七版上册,课后习题全刷。重点章节:第1章函数与极限、第2章导数与微分、第3章微分中值定理与导数应用、第4章不定积分、第5章定积分。网课可跟宋浩老师(B站)或在中国大学MOOC搜索「高等数学」。每周课后当天完成作业,建立错题本按题型归类(洛必达型、等价无穷小型、分部积分型等),期末至少刷一遍历年真题。目标85分以上(保研线),60分只在万不得已时接受。

📖 推荐教材
高等数学(第七版)上册(同济大学数学系)
高等数学18讲(张宇)
🔗 在线资源
中国大学MOOC(搜索「高等数学」,跟一位名师系统学)
哔哩哔哩(搜索宋浩高等数学,讲解通俗,适合零基础跟课)

线性代数

数学基础3学分/48学时
📌 课程定位

线性代数研究向量、矩阵与线性变换,是机器学习、图像处理、计算机图形学、最优化、大数据分析的通用语言。本科阶段至少要能熟练进行矩阵运算、求行列式、判断向量线性相关性、求特征值与特征向量、理解正交与二次型。软件方向的学生常常低估它,直到学机器学习时才发现「矩阵求导」完全看不懂。

✅ 必须掌握
  • 行列式性质与计算
  • 矩阵运算、初等变换与逆矩阵
  • 向量组线性相关性与秩
  • 线性方程组解的结构与基础解系
  • 特征值、特征向量与相似对角化
✍️ 怎么学(含目标分数与刷题量)

教材用同济《线性代数》第六版或清华居余马版,逐章刷题。重点:行列式计算、矩阵初等变换与求逆、向量组线性相关性、线性方程组解的结构、特征值与相似对角化、二次型。B站宋浩或李永乐线代基础课二选一,跟一套即可。目标85分以上,重点理解几何意义(行列式=体积、矩阵=线性变换),不要只练死算。

📖 推荐教材
线性代数(第六版)(同济大学数学系)
线性代数辅导讲义(李永乐)
🔗 在线资源
哔哩哔哩(搜索「线性代数 宋浩」,配套习题讲解完整)

C语言程序设计

专业基础4学分/64学时
📌 课程定位

这是软件工程学生真正意义上的第一门专业基础课,决定你能否写出人生第一行可运行的程序。C语言贴近内存,能让你尽早理解变量、地址、指针、内存布局这些底层概念,为后面的数据结构、操作系统、计算机组成原理铺路。这门课的目标不是背语法,而是建立「程序=数据+算法+流程控制」的直觉,并且敢于自己调试报错。

✅ 必须掌握
  • 变量、数据类型与运算符优先级
  • 分支与循环的嵌套写法
  • 函数定义、调用与参数传递(值传递)
  • 数组与字符串处理
  • 指针与内存地址的基本概念
✍️ 怎么学(含目标分数与刷题量)

教材推荐谭浩强《C程序设计》(应试友好),进阶看K&R《C程序设计语言》。网课强烈推荐翁恺(浙大)在中国大学MOOC的《程序设计入门——C语言》。核心内容:变量与运算符、流程控制、函数、数组、指针、结构体、文件读写。每周至少手写3个小程序并自己编译调试通过,绝不能只看不敲。期末目标90分,且做到能脱离IDE、在命令行用gcc编译运行。

📖 推荐教材
C程序设计(谭浩强)
C程序设计语言(K&R)(Kernighan, Ritchie)
🔗 在线资源
中国大学MOOC-翁恺C语言(搜索「程序设计入门 C语言」,公认最好入门课)
计算机教育中缺失的一课(同步补命令行/Shell/编辑器的基本功)

大学英语(一)

通识3学分/48学时
📌 课程定位

英语在软件行业不是装饰品:读官方文档、看源码注释、刷英文技术博客、以后看论文或投外企都靠它。这门课的终极目标是大二上通过四级、有余力冲六级。很多技术强但英语弱的学生,会在读官方文档和面试外企时吃大亏。

✅ 必须掌握
  • 四级核心词汇约4500词
  • 基础听力速记与阅读略读技巧
✍️ 怎么学(含目标分数与刷题量)

教材跟学校进度即可,课堂认真听。课外每天背30个单词(墨墨背单词/扇贝),精听一篇VOA慢速或一篇四级听力。四级词汇(约4500词)最好大一就背完第一轮。目标:课内80分以上,并争取大一下学期就把四级考过、拿到500分以上。不要把英语当纯水课,这是很多人毕业时才追悔的短板。

📖 推荐教材
四级词汇乱序版(新东方)
🔗 在线资源
哔哩哔哩(搜索四级听力/写作模板,考前突击有效)

思想道德与法治

通识3学分/48学时
📌 课程定位

教育部规定的思想政治理论必修课,属于必须修满学分才能毕业的课程,学分重要但时间投入产出比不高。它不影响你的技术成长,但影响毕业和评优,所以底线是保质保量通过。

✅ 必须掌握
  • 课程知识框架(用于应付期末考试)
✍️ 怎么学(含目标分数与刷题量)

上课正常出勤、考前一周集中背重点即可。期末卷面60到85分都属正常,不必为了冲高分熬夜。把省下的时间投给C语言和高数。切记:不能旷课缺考,否则影响毕业与评奖,得不偿失。

📖 推荐教材
—
🔗 在线资源
—

计算机专业导论

专业基础2学分/32学时
📌 课程定位

帮助你建立对整个软件工程知识体系的全局地图:编程语言、数据结构、操作系统、网络、数据库、软件工程各是什么、彼此什么关系。很多学生到大三才发现自己完全不知道学了什么,就是因为缺这张地图。

✅ 必须掌握
  • 计算机系统的分层结构(硬件—OS—应用)
  • 软件工程主要知识领域的划分
✍️ 怎么学(含目标分数与刷题量)

跟着老师听,同时自己看《程序员的自我修养》或CS50前几讲拓宽视野。读完一本《计算机科学导论》类教材的目录,知道每门后续课程的位置和作用即可,不必死记硬背。

📖 推荐教材
计算机科学导论(Behrouz Forouzan)
🔗 在线资源
CS50(哈佛经典入门课,开阔视野)

大学计算机基础/信息技术基础

通识2学分/32学时
📌 课程定位

介绍计算机基本组成、操作系统常识、办公软件与网络基础,是许多学校的必修公共课,也是零基础同学熟悉电脑操作的补充。对已有编程基础的同学偏简单。

✅ 必须掌握
  • 数制转换(二/八/十/十六进制)
  • 操作系统与文件系统基本概念
✍️ 怎么学(含目标分数与刷题量)

正常跟课,掌握Word/Excel/PPT和基本的计算机常识即可,不必额外投入。若老师讲到计算机网络与数制的部分,可作为后续课程的预热认真听。

📖 推荐教材
—
🔗 在线资源
—

体育(一)

通识1学分/32学时
📌 课程定位

身体素质是长期高强度学习的硬件基础,同时体育学分也是毕业硬性要求,别到毕业才发现体育不及格。

✅ 必须掌握
  • 体测达标项目(跑步、跳远等)
✍️ 怎么学(含目标分数与刷题量)

正常上课、达标即可,期末认真准备体测。建议每周保持2到3次跑步或球类运动,既锻炼身体也缓解久坐带来的颈椎和腰部问题。

📖 推荐教材
—
🔗 在线资源
—

💪本学期必须练出的技能

🎯

命令行与Linux基础

目标:能在终端里完成目录切换、文件增删改查、用gcc编译并运行C程序

完成MIT《计算机教育中缺失的一课》第1到4讲并动手做全部练习

🎯

Git版本控制入门

目标:能创建仓库、commit、push、拉分支,理解暂存区概念

在learngitbranching.js.org通关基础篇,把每周作业代码上传到Gitee/GitHub

🎯

C语言编码能力

目标:能独立写出200行以内、带数组/函数/指针的控制台程序

在洛谷或PTA刷入门题30道以上,按题目类型归类自己的错误

🛠️项目实战(写进简历的素材)

🛠️

控制台版学生成绩管理系统

时间:第10周到第16周

用C语言实现一个菜单驱动的成绩管理系统,支持录入、查询、修改、删除学生成绩,数据用结构体数组存储,支持按总分排序和平均分统计,并能把数据保存到txt文件、下次启动时读回。验收标准:程序能稳定运行,菜单不崩溃,对非法输入(如输入字母当分数)有提示,代码结构清晰、函数拆分合理,全项目不少于300行。这是你简历上第一个可写的小项目。

C
🛠️

猜数字与简易计算器合集

时间:第5周到第9周

第5到9周的入门练手项目:先写一个猜数字游戏(随机数、循环、条件判断),再写一个支持加减乘除和连续运算的简易计算器。验收标准:能正确处理除零、能循环接受输入直到用户退出,代码能独立编译运行无警告。目的是让你在学期中段就拥有「能跑的程序」,建立信心。

C

⏱️时间分配建议

高等数学与线性代数35%
C语言与编程实践30%
英语与四级备考15%
通识与思政课10%
社团、运动与休息10%

建议每周课外投入28到35小时,按16周推进。前8周:每天课后2小时消化高数与线代当天的内容,另留1.5小时敲C语言代码;周末各拿出半天分别做数学周总结和C语言小项目。第9到16周:数学进入定积分与多元微分,开始建立错题本;C语言从指针过渡到结构体与文件,同步推进成绩管理系统项目。英语每天固定30分钟背单词与精听,不可中断。通识课只在考前一周集中处理。每周日晚用30分钟复盘:本周数学错了几类题、代码写了多少行、项目推进到哪一步,并把复盘写进一个Markdown文件,这将成为你四年成长的可视化记录。

💎本学期推荐资源

📖 书单

高等数学(第七版)上册同济大学数学系

数学地基,逐章精读

C程序设计谭浩强

配合课堂,应试稳妥

C程序设计语言(K&R)Kernighan, Ritchie

第一本真正教会你C的书

🎬 视频课程

程序设计入门——C语言(翁恺)中国大学MOOC
高等数学(宋浩)哔哩哔哩
计算机教育中缺失的一课MIT 中文版

🌐 网站与文档

国内最优质的免费大学课程平台

查语法、做小练习的速查手册

入门题目多,适合练C语言基础题

🐙 GitHub 仓库

中文计算机学习路线与资源合集

命令行、Git、编辑器基本功

✅学期末检查清单

✔️ 做到了就算合格
  • 高数上、线代期末成绩均在80分以上(争取85+)
  • 能脱离IDE,在命令行用gcc编译并运行一个多文件C程序
  • 独立完成一个不少于300行的控制台项目并上传到Gitee
  • 背完四级词汇第一轮,四级听力能听懂大部分
  • 掌握Git的add/commit/push/分支基本操作
  • 形成每周复盘的习惯,有一个持续更新的学习记录文件
⚠️ 常见坑
  • {'坑': '把C语言当文科背语法,从不亲手敲代码', '破解': '规定自己每学一个语法点必须立刻写一个能跑的例子,坚持「不运行不算学会」'}
  • {'坑': '高数只刷课后题不总结题型,考场上换个数就不会', '破解': '建立按题型分类的错题本,每周归纳一次解题套路'}
  • {'坑': '英语完全放弃,想着「以后再说」', '破解': '把背单词变成每天固定30分钟的肌肉记忆,越早开始越轻松'}
  • {'坑': '被社团、游戏、社交掏空时间', '破解': '只参加1个真正感兴趣的社团,游戏设时间上限,把晚上7点到10点设为不可撼动的自习时间'}