高级语言程序设计

序言

主讲教师:白诗琦 计科系

关于本门课的所有资料将会根据上课时间更新,请各位同学根据需要自行下载!😋 😆

本门课更希望各位童鞋能够掌握学习一门新的编程语言的基本方法,并能够建立起编程思维!!!

课程成绩评定办法

1.5学分

总评成绩=平时成绩(30%)+期中(20%)+期末成绩(50%),其中平时成绩包括学生课堂表现(20%)、考勤(10%)。实验设计主要考查学生编程实践训练能力;期末考试主要考查学生对理论知识的掌握情况以及简单程序的编写和调试能力。

3.5学分

总评成绩=平时成绩(30%)+期中(20%)+期末成绩(50%)。其中平时成绩包括学生课堂表现、考勤和平时作业的总和;上机成绩主要考查学生实践能力(以课程设计方式进行)。期末考试采用闭卷机考的方式进行考查,题型多样化,主要考查学生对理论基础知识的掌握情况以及学生综合能力的掌握情况。

IDE的选择

  1. Win: Visual studio 2012 (考试系统用的这这个)
  2. Mac: Xcode gcc + sublime(个人偏好 🍹
  3. Jupyter(在线 时间成本较低 墙裂推荐🍻)

安装完Jupyter后在终端运行以下命令:

打开Jupyter notebook:

1
jupyter notebook 

安装支持C语言的Jupyter内核:

1
sudo pip3 install jupyter-c-kernel

运行配置程序:

1
sudo install_c_lernel

如何学习

  1. 按时上课啦!
  2. 多读书多看报,课后多进行练习(最重要

https://leetcode.com/

  1. 巨人的肩膀

Google Github Gitee StackOverflow 百度…

How to code fater!

  1. Troubleshooting and Cheatsheets( Log everything 个人报错笔记

当你试遍了所有方法去处理error,别忘了重启这个大招 😅

5. 了解、去尽可能使用Anaconda

学习C语言的必要性

1. C语言日常应用场景

Mainly C programming is utilized for the Development of system software and Desktop application. Some C programming applications are given below.

  • Operating Systems
    UNIX was the first OS developed using a high-level programming language designed in the C programming language. Later on, Microsoft Windows and different Android applications were scripted in C language.

  • GUI (Graphical User Interface)
    Adobe Photoshop is one of the most popular photo editors since olden times. It was designed with the help of the C language only. Moreover, Illustrator and Adobe Premiere were also designed using C.

  • Embedded Systems
    C programming is known as the optimum option for scripting applications and drivers of embedded systems because it is closely associated with machine hardware.

  • Google
    Google chromium-browser and Google file system were developed with the help of C/C++. Moreover, the Google Open Source community has a huge number of projects being managed with the help of C/C++.

  • Compiler Design
    One of the common uses of the C programming language was the production of compilers. Compilers for many other languages were designed by keeping in mind the relationship of C with low-level languages, making it more comfortable to be understandable by the machine. Many popular compilers were created with the help of C such as Clang C, Bloodshed Dev-C, Apple C, and MINGW.

  • Mozilla Firefox and Thunderbird
    Because Mozilla Firefox and Thunderbird were open-source email client projects. Therefore, they were written in C/C++.

  • Gaming and Animation
    Since the C language is comparatively faster than Python or Java, as it is compiler-based, it also gains its reputation in the gaming sector. Some of the most simple games are coded in C languages, such as The Dino game, Tic-Tac-Toe, The Snake game, and many more. Improving advanced versions of graphics, Doom3, and fps horror game was designed by id Software for Microsoft Windows using C in 2004.

  • MySQL
    MySQL is also an open-source project utilized in Database Management Systems. It was written in C/C++.

  1. 第一门编程语言(敲门砖、基石)

学习C有助于更好的理解C++,Java,C#,Perl以及其他基于C的特性的语言。第一开始就学习其他语言的程序员往往不能很好的掌握继承自C语言的基本特性

课件

  1. Chap1-程序设计和C语言 课件
  2. Chap2-算法「程序设计的灵魂」课件
  3. Chap3-最简单的程序设计「顺序程序设计」课件 C语言语法总结 思维导图
  4. Chap4-选择结构程序设计 课程内容总结 思维导图
  5. Chap5-循环结构程序设计 课程内容总结
  6. Chap6-数组 课程内容总结
  7. Chap7-函数 课程内容总结
  8. Chap8-指针 课程内容总结
  9. Chap9-结构体 课程内容总结 课堂测试
  10. Chap10-文件 课件 课程内容总结

实验课相关资料

  1. 如何用Visual Studio 2012 搭建C语言项目

  2. (1) Lab Session(1st)

    • 实验指导文档
    • (2021-2022-2)-52040115-19870001-3 提交时间:2022年3月6日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-1 提交时间:2022年3月17日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-2 提交时间:2022年3月24日 24点前。文档格式PDF!
    • 将所有文档打包成一个压缩文档,命名为:学号+姓名 如: 20198823_张三

    (2)Lab session(2nd)

    实验任务

    • 第四章课后习题
    • 教辅第19章实验四

    提交时间

    • (2021-2022-2)-52040115-19870001-3 提交时间:2022年3月21日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-1 提交时间:2022年4月3日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-2 提交时间:2022年4月14日 24点前。文档格式PDF!
    • 将所有文档打包成一个压缩文档,命名为:学号+姓名 如: 20198823_张三

    (3)Lab session(3rd)

    实验任务

    • 输出5*5的偶数矩阵(nested for loop)
    • 第五章课后习题
    • 教辅第19章实验五

    提交时间

    • (2021-2022-2)-52040115-19870001-3 提交时间:2022年3月28日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-1 提交时间:2022年4月16日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-2 提交时间:2022年4月30日 24点前。文档格式PDF!
    • 将所有文档打包成一个压缩文档,命名为:学号+姓名 如: 20198823_张三

    (4)Lab session(4th)

    实验任务

    • 第六章课后习题
    • 教辅第19章实验六

    提交时间

    • (2021-2022-2)-52040115-19870001-3 提交时间:2022年4月4日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-1 提交时间:2022年5月22日 24点前。文档格式PDF!
    • (2021-2022-2)-52040115-19870001-2 提交时间:2022年5月22日 24点前。文档格式PDF!
    • 将所有文档打包成一个压缩文档,命名为:学号+姓名 如: 20198823_张三

    (5)Lab session(5th)

    实验任务

    • 第七章课后习题
    • 教辅第19章实验七、八。

    提交时间

    • (2021-2022-2)-52040115-19870001-3 提交时间:2022年4月17日 24点前。文档格式PDF!
    • 将所有文档打包成一个压缩文档,命名为:学号+姓名 如: 20198823_张三

    (6)Lab session(6th)

    实验任务

    • 第八、九、十章课后习题
    • 教辅第19章实验九、十、十一、十二。

    提交时间

    • (2021-2022-2)-52040115-19870001-3 提交时间:2022年6月5日 24点前。文档格式PDF!
    • 将所有文档打包成一个压缩文档,命名为:学号+姓名 如: 20198823_张三

训练题

《高级语言程序设计基础-C语言教程》习题

期中考

  • 考试时间100min
  • 考试方式上机考
  1. (2021-2022-2)-52040115-19870001-1 期中考时间为5月26日 早上1,2节(地点:任420)
  2. (2021-2022-2)-52040115-19870001-2 期中考时间为6月2日下午8,9节(地点:任420)

关于期末考

期末参加学校统一安排考试

  1. 样卷
  2. 样卷答案

考试时间:考试周的某一天
考试时长:120min
考试方式:笔考
请认真复习,利用好样卷进行复习检测,ps:不会有同样的题,还是要认认真真搞懂!

推荐书籍清单

  1. 《C Primer Plus》
  2. 《C语言程序设计:现代方法》

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!