课程介绍
本课程的教学目标是学习一种典型的编程语言――C语言,建立编程概念,掌握编程的基本方法和技巧,培养良好的编程风格,从而具备应用设计解决相关专业领域内实际问题的基本能力。 该课程在系统介绍编程语言基本知识的基础上,重视编程思想和能力的培养,并引入专业应用的实际问题和工艺方案。  
为了创建UNIX操作系统,贝尔实验室的Ken Thompson和Dennis M.Ritchie设计了C语言。 之后,Windows,MacOS,Linux,Android等许多OS和许多应用程序采用C语言作为编程语言。 C语言诞生后,C,Java,C#,PHP,Python,Matlab M,R等一系列语言被发明出来,并广泛应用于各种软件开发领域,但C语言依然保持着旺盛的生命力。 在IEEE最近发布的编程语言排名中,C语言始终排在前两位。 首先,操作系统依然是用C语言开发的,其次,在GPU计算等新技术领域,C语言依然优先,而且很多语言多多少少吸收了C语言的营养。 作为编程初学者的C语言,虽然不是最单纯的语言,但毫无疑问是一生中受惠的编程语言。  
本课介绍如何计算,如何表示逻辑,如何处理聚合数据,如何分解和重用代码,如何实现基于内存地址的数据访问,如何表示复杂对象,如何永久存储数据以及如何移植程序。 该系统说明了式运算,输入输出,顺序结构,选择结构,循环结构,排列,函数,指针,结构体,文件,预编译处理等。  
为了使学习变得容易,作为程序开发工具,提出了活用移动机器的应用软件的方案。 我们还建议您使用多编写器。  
教员
东北大学计算机科学
项,辽宁省科技进步二等奖等两项。 近5年来,担任省市自然科学基金课题3个,省科技攻关计划1个,国家863计划项目,国家科技攻关项目,以及省部级和国际合作项目多项工作。 在国内外重要学术会议和重要学术刊物上先后发表了40多篇学术论文。 在授课方面,担任负责人的《高级语言编程》课程是辽宁省精制课和教育部-英特尔国家精英课程,而《编程基础》和《高级语言编程》分别是辽宁省动画公开课和资源共享课,主持了多个省级教育改革课题,获得了省教育成果一等奖2项,主编的《编程基础(C语言)》。  
东北大学计算机科学与工程学院赵长宽
赵长宽是中国计算机学会会员,美国ACM学会会员,辽宁省普通高等学校本科教学网建设发展专家工作组的成员。 主要研究领域是社会计算,大规模在线开放课程(MOOC),致力于在教育,商业,制造业中发现数据价值。 从1998年开始关注企业信息化及相关技术,参与计算机软件产品设计,业务管理效率和水平的提高,企业核心竞争的提高,CAx(Parasolid/Spatial/AutoCAD/NX/Cero),PLM(自研/Teamcenter/Window)系统的实施与开发,航空,航天,机车,汽车领域的多家大企业的信息化建设。 从2012年开始负责辽宁省资源共享科平台的研究开发,从2014年开始负责跨校学分的项目系统的研究开发,同时负责东北大学MOOC/SPOC系统的重要技术研究。  
课程章节
模块1编程简介
计算机基本原理
指令程序
程序设计语言
问题解决和算法
程序设计思想
C语言概述
模块2数据表示法和运算
标识
数据类型
恒量
变量
运算符概述
算术运算符和算术表达式
关系运算符和关系表达式
逻辑运算符和表达式
赋值运算符和赋值表达式
条件运算符和表达式
逗号运算符和逗号表达式
类型变换
模块3基本语句和顺序结构
输入/输出摘要
printf函数
scanf函数
字符输入输出
程序控制结构概述
基本成分
模块4逻辑判断和选择机制
单个分支结构和if
两个分支结构和if
多分支结构和if
多分支结构和switch
模块5迭代计算和循环结构
循环结构-while
环路结构:for
循环结构
环路结构,例如break/continue
环结构-嵌套
模块6集合数据及其处理
数组概念
一维排列
二维数组
模块7字符数据处理
字符数组
字符串。
数组和数据存储
使用模块8函数分解和重复使用代码
函数简介
函数定义
函数声明
参数传递
函数调用
模块9递归和函数结构
递归调用
源程序结构
内部函数和外部函数
变量作用域-全局和局部变量
变量的存储方式
模块10的内存地址和指针
地址和指针
指针变量
指示字运算
指针和一维数组
指针和二维数组
应用模块11指针
指针和字符串
指针排列
数组指针
函数和指针
变量地址-指向指针的指针
内存管理
常见问题
开发工具
开发工具(PC)
[1]CodeBlocks
[2]VC 2010
开发工具(移动电话和平板电脑)
机器人:C4droid
苹果系统:C
参考资料
可可宁,编程基础(C语言)第3版,清华大学出版社,2018年1