学号20241317 《计算机基础与程序设计》课程总结
(按顺序)每周作业链接汇总
第0周作业:自我介绍
第一周作业:AI学习
第二周作业:c语言程序设计第一章
第三周作业:c语言程序设计第二章
第四周作业:c语言程序设计第三章
第五周作业:c语言程序设计第四章
第六周作业:c语言程序设计第五章
第七周作业:c语言程序设计第六章
第八周作业:c语言程序设计第七章
第九周作业:c语言程序设计第八章
第十周作业:c语言程序设计第九章
第十一周作业:c语言程序设计第十章
第十二周作业:c语言程序设计第十一章
第十三周作业:c语言程序设计第十二章
第十四周作业:c语言程序设计第十三章
实验一:Linux 基础命令实践
实验二:基本控制结构编程练习
实验四:函数与数组编程练习
实验六:文件与结构体编程练习
实验七:缓冲区溢出实验
实验八:基于 LAMP 部署 WordPress
课程收获与不足
收获
基础知识掌握
语法熟练运用:通过系统学习,我熟练掌握了 C 语言的基本语法,包括数据类型、运算符、控制结构(如 if 语句、循环语句)、函数定义与调用等。这让我能够准确地表达程序逻辑,编写出符合 C 语言规范的代码。例如,在处理复杂的条件判断时,能够灵活运用 if-else if-else 结构,确保程序在不同情况下都能正确执行。
数据结构理解:深入学习了数组、指针、结构体等核心数据结构。数组让我能够高效地存储和处理批量数据;指针的掌握让我理解了内存的底层运作机制,能够进行复杂的内存操作,如动态内存分配、内存地址计算等;结构体则让我能够将不同类型的数据组合在一起,方便地处理复杂的数据类型,如学生信息、图书信息等。
编程思维培养
逻辑思维强化:C 语言程序设计要求严谨的逻辑思维,我在学习过程中不断锻炼这方面的能力。面对问题时,能够逐步分解,找出关键点,然后用程序逻辑去解决。例如,在解决一个算法问题时,先明确输入输出要求,再分析问题的难点,逐步构建起算法的逻辑框架,最后用代码实现。
模块化思想形成:学习了如何将复杂的程序拆分成多个功能模块,每个模块负责一个独立的功能。这种模块化思想让我在编写大型程序时,能够更好地组织代码,提高代码的可读性和可维护性。例如,在开发一个学生成绩管理系统时,将数据输入、成绩计算、结果输出等功能分别封装成不同的模块,使得整个程序结构清晰,便于后续的修改和扩展。
实践能力提升
项目经验积累:通过完成一系列项目,如学生成绩管理系统、简易文本编辑器等,积累了宝贵的实践经验。这些项目让我将理论知识应用到实际场景中,解决实际问题。在项目过程中,我学会了如何分析需求、设计程序架构、编写和调试代码,以及如何进行程序测试和优化。
调试技巧掌握:调试是编程中不可或缺的环节。在学习过程中,我掌握了多种调试技巧,如使用打印语句输出变量值、利用调试工具单步执行程序、查看变量内存地址等。这些技巧帮助我快速定位和解决程序中的错误,提高了编程效率。
软技能增强
问题解决能力:面对编程中遇到的各种问题,我学会了冷静分析,不轻易放弃。通过查阅资料、向同学或老师请教、反复尝试等方法,逐步解决问题。这种问题解决能力不仅在编程中有用,在其他领域也具有重要意义。
团队协作意识:在一些小组项目中,我与其他同学分工合作,共同完成任务。这让我认识到团队协作的重要性,学会了如何与他人有效沟通、协调工作,以及如何在团队中发挥自己的优势。
不足
知识深度有待挖掘
高级特性掌握不够:虽然掌握了 C 语言的基本语法和常用特性,但对于一些高级特性,如位运算、信号处理、多线程编程等,了解还不够深入。这些高级特性在某些特定的应用场景中非常有用,但在学习过程中,由于时间和精力有限,未能深入研究和实践。
底层原理理解不足:对 C 语言运行的底层原理,如操作系统如何管理 C 程序的内存分配、程序的加载和执行过程等,理解还不够透彻。这在一定程度上限制了我优化程序性能和解决深层次问题的能力。
实践广度有待拓展
应用场景有限:在学习过程中,接触的项目和应用场景相对有限,主要集中在一些基础的程序设计和简单的系统开发上。对于更广泛的应用场景,如嵌入式开发、网络编程、图形界面开发等,缺乏实际的项目经验。
跨平台开发经验不足:C 语言作为一种跨平台的语言,在不同的操作系统和硬件平台上都有应用。但在学习过程中,主要是在 Windows 或 Linux 平台上进行开发,对于如何在其他平台上进行 C 程序的开发和移植,缺乏实践经验。
编程习惯有待改进
代码规范性不够:虽然在编程过程中注意到了代码的可读性,但在一些细节方面,如命名规范、注释的完整性等,还存在不足。有时为了追求代码的简洁性,忽略了命名的直观性和注释的详细性,这在一定程度上影响了代码的可维护性。
代码复用意识不足:在编写程序时,有时没有充分考虑到代码的复用性,导致在不同的项目中重复编写一些相似的代码。虽然这在一定程度上能够加深对某些功能实现的理解,但不利于提高编程效率和代码的整洁性。
学习方法有待优化
理论与实践结合不够紧密:在学习过程中,有时过于注重理论知识的学习,而忽视了与实践的紧密结合。导致在学习一些理论概念时,理解不够深刻,难以将这些概念应用到实际编程中去。
学习计划执行不够严格:虽然制定了学习计划,但在执行过程中,有时会受到其他因素的干扰,导致学习计划的执行不够严格。这使得学习进度和效果受到了一定的影响。