C语言程序设计(上)
分享
课程详情
课程评价
spContent=Kenneeth Lane Thompson为了方便的玩自己编写的游戏程序,用汇编语言写了UNIX操作系统,又为了更方便的写这个UNIX而创造了C。创造在游戏中产生,业绩在创造中成就!从此,C便一发不可收拾,独领风骚!当计算遇上了困惑,当编程选择了C,当面向问题的计算机程序设计加入了优秀团队,就是这门课程!
—— 课程团队
课程概述

        大家好!欢迎你们!无论是新同学还是老朋友,都非常高兴能在这里和大家相聚!

        我们一如既往还说C,因为它称霸于计算机语言,超乎我们的想象。

        如果想深刻的理解这个时代,就要理解计算机编程! 编程完成了基于计算机的计算实现,改变着我们的思维方式! 编程的日子上演着种种惊喜,让我们实现着梦想!
       C 语言具备了面向过程程序设计的基本要求,在诸多领域无可替代,也适合于构建程序设计基础。所以它是一门程序设计的公共基础课程,相信也是热爱程序设计的朋友们会青睐的一门课。对于计算机类专业,程序设计是专业基础课,它是后续专业课程的基础;对于非计算机类专业,程序设计将会改变我们的思维,教给我们信息时代如何思考问题,从而能更好地利用计算机科学与技术解决本专业领域的计算相关、信息处理相关的问题。
        为了循序渐进,我们将《C语言程序设计》这门课程分为上、下两部分完成。以数组为分割点,由《C语言程序设计(上)》和《C语言程序设计(下)》,前者8周,后者10周。采用分而治之,旨在由浅入深,坚固基础,追求完备。
        我们的课堂将从零基础开始,为大家介绍“什么是程序设计?如何实现程序设计?”。本课程以计算思维为导向,以应用问题为牵引,以能力培养为目标,实施 “传授知识与思维训练相结合,编程语言与程序设计相结合,自主学习与平台引导相结合”的教学模式。

        为了使大家对重点难点内容易于学习,对算法设计有直观理解,我们在课程里增设了虚拟实验栏目,大家注意每周的内容发布。

         温馨提示:

         《C语言程序设计(上)》和《C语言程序设计(下)》是一个系统的课程,考虑学期时间限制和大家的时间安排才分为两个相对独立的部分。(上)完成的是程序设计的基础部分教学,可以独立学习。尤其对于初学程序设计的读者,可以先尝试学习,循序渐进。而《C语言程序设计(下)》则最好是在有了上的基础上进行学习,这样便于理解和有效跟进。我们安排先开放 (上),五周之后再开放(下),这样大家既可以系统学习,也可以按需选择。当然,对于有C语言基础的朋友,可以直接从(下)开始,或者通篇选择学习。

         (上)、(下)按两门课程管理,成绩和证书都是分别计入。

           欢迎大家在这里学习课程,分享快乐,贡献精彩!

授课目标

通过本课程的理论学习及编程练习,初步具备计算思维及基本的程序设计能力。

课程大纲

第一周:从问题到C语言程序设计

1.1 计算机的问题求解方法

1.2 C语言与C程序

1.3 C语言处理系统与程序调试运行

1.4 程序中的人机交互

第二周:数据计算实现与顺序结构程序设计(一)

2.1 算术运算的C程序实现

2.2 关系运算的C程序实现

第二周作业

第三周:数据计算实现与顺序结构程序设计(二)

2.3 逻辑运算的C程序实现

2.4 位运算的C程序实现

2.5 几种很个别的运算

2.6 混合运算及数据类型转换

2.7 顺序结构程序实例

第三周编程作业

第四周:选择结构的程序设计

3.1 程序中的路径选择实现

3.2 路径中的再选择——嵌套判断

3.3 复杂判断问题的C程序设计

3.4 多分支问题的C程序设计

3.5 GOTO的适当使用

3.6 选择结构的程序实例

第四周作业

第四周编程作业

第五周:循环结构的程序设计(一)

4.1 需要重复执行的程序

4.2 至少要执行一次的循环

4.3 已知循环次数用for语句

4.4 循环控制——简单循环应用

第五周编程作业

第六周:循环结构的程序设计(二)

4.5 循环的嵌套

4.6 break与continue

4.7 循环的综合应用

第六周作业

第六周编程作业

第七周:数组(一)

5.1 同类有序数据处理问题

5.2 一维数组的定义和引用

5.3 一维字符串数组

5.4 字符串处理函数

第七周编程作业

第八周:数组(二)

5.5 二维数组的定义与使用

5.6 二维数组的输入输出

5.7 二维数组的应用‍

5.8 二维字符数组

5.9 数组综合应用

本期课程结束语

第八周编程作业

期末复习

《C语言程序设计(上)》期末复习参考

期末复习答案

《C语言程序设计(上)》期末复习参考答案

预备知识

本课程可以零基础进行学习,如果你学过《大学计算机基础》等相关课程,将有助于深入了解本课程的部分内容,如果没有任何先修课的知识,建议自学一些简单的信息在计算机中的表达和计算机硬件基本结构的相关知识。

证书要求

通过视频学习,完成测试和作业,达到课程要求后,可以获得课程主讲教师签名颁发的合格证书或优秀证书。总成绩由各分项成绩汇总后评定,见下表:

考核

成绩

作业和测验

40/100

考试

50/100

参与讨论

10/100

60-84分:合格证书
85-100分:优秀证书

参考资料

  1. 参考教材
        《C语言程序设计教程》(第三版)
        北京理工大学出版社  李凤霞等编


        《C语言程序设计教程习题与上机指导》
        北京理工大学出版社  王树武等编


        其他的C语言的教材也可以参考
    2.相关链接:
       虚拟实验工场云平台:http://www.vrsygc.com/index

       国家级精品资源共享课‍
        http://www.icourses.cn/coursestatic/course_3313.html

     

常见问题

Q:学习过程中可能出现的问题有哪些?
A:注重理论学习,忽视上机编程实践;入门时以为难度大,产生畏难情绪;太注重学习语句的语法规则,忽视了对编程思路和方法的训练;急于求成,总想编写综合性的程序,忽视基本概念,忽视基本功的训练。
Q:学好C语言的关键是什么?
A:上机编程是学好C语言的关键,多上机,多练习,提高动手能力。
Q:整个学习过程是什么样的?
A:整个学习过程分为两个阶段。初级阶段:重点掌握C语言的语法;从模仿起步;必要的记忆;养成良好的编程习惯;掌握上机编写程序的方法;熟练掌握程序调试方法。中级阶段:重点掌握编程思路和基本算法;学会分析问题;开始进行算法设计。
Q:编程需要什么样的操作系统和编程工具?
A:微软Windows系列,苹果 OS X系列,各种版本的Linux都可以作为练习C语言的操作系统, DEV-C++, MS Visual Studio、C-Free等都可以作为练习C语言的编程工具。课程演示将使用DEV-C++。