课程详情
课程评价
spContent=随着深空探测器、无人机、自动驾驶汽车等智能系统的发展,计算机及其程序已经深刻影响人类的发展。若将计算机硬件类比躯干,那计算机程序则是构建大脑的基础。在众多程序设计语言中,C语言为构建Unix操作系统而设计,后来的Windows、MacOS、Linux、Android等操作系统,以及众多应用软件均使用C语言开发。时到今日,虽然诞生了众多新的程序设计语言,但是C语言依然保持强大生命力,是新型设备开发的利器。为了梦想,用程序改造世界,创造无限可能!欢迎大家与我们一起学习使用C语言程序设计!
—— 课程团队
课程概述

      本课程的教学目标是通过学习C语言,建立起程序设计的概念,掌握程序设计的基本方法和技巧,养成良好的程序设计风格,从而具备应用程序设计解决相关专业领域内实际问题的基本能力。本课程在系统介绍程序设计语言基本知识的基础上,注重程序设计思想及能力培养,并引入专业应用的实际问题和工程案例。 

     现代计算机遵循了艾伦·麦席森·图灵(Alan Mathison Turing)提出的”图灵机"模型,延续冯·诺依曼(John von Neumann)提出的“存储程序式电子计算机“体系结构。

     计算机程序(包括指令和数据)在运行时,首先存储到内存中,然后在中央处理器控制下自动执行。在执行过程中,按需从键盘、鼠标等输入设备获取信息,并向显示器、打印机等输出设备输出结果。

     既然计算机程序运行于“存储程序式电子计算机“中,因此我们有必要了解构成程序的指令和数据如何表示和存储,也就是说为了能够编写计算机程序,首先要学习一门程序设计语言。在众多程序设计语言中,C语言为构建Unix操作系统而设计,后来的Windows、MacOS、Linux、Android等操作系统,以及众多应用软件均使用C语言开发。时到今日,C语言依然保持强大生命力。 因此本门课程选择了C语言作为学习程序设计的基础。

     计算机作为一种计算系统,其数值计算、非数值计算方法与数学、物理、化学、力学等等领域的方法不同,将专业领域的求解方法转换为计算机领域的算法,掌握典型问题的求解算法,是本门课程的重要任务。

     本课程围绕如何运算、如何表达逻辑、如何处理集合数据、如何实现代码的分解与重用、如何实现基于内存地址的数据访问、如何表达复杂对象、如何实现数据永久存储、如何实现程序移植,系统介绍表达式运算、输入输出、顺序结构、选择结构、循环结构、数组、函数、指针、结构体、文件、预编译处理等内容。

     按照课程计划,本课程安排15周的学习任务,每周发布2个学时理论学习任务。建议各位同学另行安排2个学时完成上机实践。


授课目标

通过学习使用C语言编写程序,初步掌握程序设计方法,养成良好的程序设计风格;结合C语言,系统地学习面向过程的、结构化程序设计的思想和方法;结合上机实践,使学生对程序设计有一个比较全面的、系统的了解,为学习程序设计和软件开发打下一个良好基础。

课程大纲
预备知识

本课程要求学习者熟悉Windows或Linux的基本操作。


证书要求

为积极响应国家低碳环保政策, 2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。

 

电子版认证证书支持查询验证,可通过扫描证书上的二维码进行有效性查询,或者访问 http://www.icourse163.org/verify,通过证书编号进行查询。学生可在“个人中心-证书-查看证书”页面自行下载、打印电子版认证证书。

 

完成课程教学内容学习和考核,成绩达到课程考核标准的学生(每门课程的考核标准不同,详见课程内的评分标准),具备申请认证证书资格,可在证书申请开放期间(以申请页面显示的时间为准),完成在线付费申请。

 

认证证书申请注意事项:

1. 根据国家相关法律法规要求,认证证书申请时要求进行实名认证,请保证所提交的实名认证信息真实完整有效。

2. 完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。


参考资料

开发工具(PC)


[1]  CodeBlocks 20.03

[2] VC++ 2010/2019 

[3] VSCode


开发工具(手机及平板电脑)


安卓系统:C4droid

苹果系统:C++


参考教材:
高克宁,程序设计基础(C语言)第3版,清华大学出版社,2018年1月

常见问题

------------账号注册相关问题------------

Q1:我东北大学的学生,本期课程采用了混合式教学,在注册账号时要注意哪些问题?

A1:要求个人信息的“昵称”中包含学校和学号信息。例如NEU20200101。

Q2:我不是东北大学的学生,本期课程采用了混合式教学,在注册账号时注意哪些问题?

A2:要求个人信息的“昵称”中包含学校和学号信息。例如LNU20200101。

Q3:我是在校学生,未参加混合式教学,在注册账号时注意哪些问题?

A3:不做要求,建议参考问题Q2。

------------混合式教学相关问题------------

Q4:我希望依托本门课程开展混合式教学,如何联系?

A4:请发送邮件给我们,gkn@cc.neu.edu.cn

Q5:我们线下课程进度与MOOC进度不一致,如何处理?

A5:为了支持混合式教学需要,本期课程所有练习和测验将开放4周,最终截止时间不超过课程结束时间。请各位老师另行通知各项学习活动的实际完成时间。

Q6:如何获得学生过程学习数据?

A6:需要获得学生在线学习过程学习数据的老师,请通过慕课堂模块实现。

------------东北大学混合教学问题------------

Q7:本学期注册《C语言程序设计(理工类)》课程,教学如何开展?

A7:课程开展各项安排,请参见教务处通知。