C 语言程序设计基础
基本信息
课程名称:C 语言程序设计基础
课程介绍:本课程是计算机科学的基石,旨在通过学习 C 语言的语法逻辑、内存管理与算法实现,培养学生严谨的程序设计思维,为后续学习操作系统、数据结构等核心课程打下坚实基础。
课程画像:
- 课程类型:平台
- 学分:3 学分
- 考核方式:平时编程作业 · 多次机试
课程资料区
课程资料库(往年课程主页):repo
课程教材:
- 《C语言程序设计:现代方法(第2版•修订版)》,K.N.King 等 著,人民邮电出版社
- 《程序设计教程 用C++语言编程(第3版)》,陈家骏,郑滔 著,机械工业出版社
经验分享区
课程定位评价:
- 对于零基础同学,前期的环境配置有一定门槛,建议学会自己搜集资料,多和老师、助教交流
- 课程整体难度中等,平时需要多加练习提高实际编程能力
- 进阶期:指针相关内容是整门课的分水岭,理解了内存地址与指针的关系,课程难度会大幅下降
考试情报:
- 往年考试都是机试的形式,难度一般与平时作业相仿,难度适中
- 考前复习建议复习重点的算法,复习结构体、指针、链表、函数、递归等基本的概念和操作(例如给定一个链表,对于如何代码实现链表创建、插入、删除等操作要很熟练)
- 可以去 leetcode、洛谷 等网站上寻找相关题目进行练习
高分策略:
机试的通用策略就是简单题尽可能拿满分,难题尽量拿到大部分的分数,在有限的时间内不用过于追求每一道题都回答得完全正确;遇到多次0分的题也可以先跳过,避免卡死在一道题上面。
考前熟悉机试的环境,包括使用的编程软件和编译器等,避免外界因素的干扰
针对平时作业中经常出现的问题去进行总结反思和改进,例如边界条件的选取、链表是否会陷入循环等问题
机试的时候,可以使用断点进行调试,也可以通过多次输出去检查正确性。例如在
scanf输入之后,可以先打印一下,以判断是否进行了正确的输入
机试常见问题总结
- VS 会对
printf报错,最方便的解决方式是使用printf_s代替printf - 代码的各种字符都要用全英文字符
- 注意区分不同的输入读取方式
scanf,getchar等,尽量使用%s读取字符串,而不是循环使用%c - 浮点数用
double而不是float - 需要得到浮点数的除法,尽量两边都强制类型转换,如
(double)x/(double)(2);或直接使用(double)x/2.0,输出看清保留的小数位数