学校云 建设你的专属在线教育平台
中国大学MOOC
SPOC学校专有课程
计算机程序设计(c++)
分享
spContent=计算机已经是“无所不能”,而每一项神奇的功能背后都有一系列计算机程序在运行。如今,电脑、智能手机的普及,每个人都可为计算机创造更加神奇的功能。学习程序设计,你也做得到。
—— 课程团队
课程概述

程序设计基础(C++语言)是面向我校的电气,自动化,电子信息,材料,测绘等非计算机专业培养计算机程序设计基础能力与学习面向对象方法的重要课程。主要讲授C++程序设计语言、程序结构和过程化基础,以及在C++程序设计基础上面向对象程序设计的方法。本课程的主要任务是使学生(1)通过课程的学习,熟练掌握C++语言的基础语法,掌握面向对象程序设计的基本方法,理解面向对象程序设计的基本思想。(2)培养运用程序设计解决应用问题的思维,强化训练学生编程技能,从而达到培养应用面向过程及面向对象方法进行程序设计解决应用问题的综合能力的目的。

本课程重点讲解C++语言的基础内容,然后引申到面向对象的程序设计在C++中的体现。本课程是一门实践性很强的课程,在理论学习的同时,要求学生通过实验和实践熟练掌握C++程序语言的编程思想,同时加强运用相关知识解决实际问题的能力,达到理论与实践的高度统一,突出能力的培养。

学习程序设计,要学习语言的语法,更重要的是求解问题的算法思想。语法的学习需要多尝试,算法的学习需要多思考。学习程序设计,就要多编程。


授课目标

1. 使学生系统地掌握结构化程序设计的思想和过程,基本理论和常用的结构语句,并进一步培养学生程序设计的方法和能力。

2. 培养学生运用程序设计解决应用问题的思维,强化训练学生编程技能,系统掌握面向对象程序设计的思想和过程。

3. 掌握程序设计的常用算法,能够全面、深入理解和熟练掌握所学内容,能够用其分析,设计和解决类似问题,举一反三。


成绩 要求

学习本课程,积极参与课程讨论,完成本课的平时练习和期末测验,成绩合格的华东交大学生获得相应学分。

评分依据:课程满分100分。平时成绩占40%,期末上机测试占60%。平时成绩中:(1)平时表现(线上线下考勤,课堂交流区)占20%;(2)平时测验占40%(包括线上和后续线下);(3)实验报告占20%;(4)上机占20%(包括线上和后续机房上机)。


课程大纲
预备知识

本课程面向零基础同学。学习过计算机基础或其他计算机课程对学习有帮助,但不是必要的。


参考资料

教材和教学参考书

教材:

[1] 王更生,谢昕,刘觉夫,杜玲玲. C++语言基础教程》. 北京邮电大学出版社,2015-1.

[2] 宋岚,曾辉,王更生,李广丽. C++语言基础实训教程》. 北京邮电大学出版社,2015-1.参考书:

[1] 赵英良 仇国巍等. C++程序设计教程. 清华大学出版社,2013.8. ISBN 978-7-302-33057-8

[2] 赵英良 卫颜俊等. C++程序设计实验指导与习题解析. 清华大学出版社,2013.8. ISBN 978-7-302-33058-5

[3] 罗建军, 朱丹军, 顾刚等. C++程序设计教程(第2版). 高等教育出版社,2004.8. ISBN 978-7-04-022080-3

[4] 罗建军, 朱丹军,顾刚等. C++程序设计教程学习指导(第2版). 高等教育出版社,2004.8. ISBN 978-7-04-022190-9

[5] 谭浩强. C++程序设计(第2版). 清华大学出版社, 2011.

[6] Stanley B. LippmanJosée LajoieBarbara E. Moo . 王刚,杨巨峰 .C++ Primer(中文版 5版). 电子工业出版社, 2013.

[7] [] Stephen Prata . 张海龙,袁国忠译.C++ Primer Plus(第6 中文版). 人民邮电出版社,2012.

[8] 陈锐,华庆一等.最新C/C++函数与算法速查速用大辞典. 中国铁道出版社,2015.9


常见问题

Q: 本课程的选课条件是什么?
A: 本课程预计的主要对象是大学本科生,但不限于大学生。只要你有热情,有决心,就能学好。如果在大学学了“大学计算机基础”或接触过其他语言的程序设计,对本课学习会有所帮助,但这不是必要的,更不是充分的。

Q: 初中生可以听么?
A: 初中有初中的学习任务,所以,首先建议初中生把初中的课程学好。如果学有余力或对程序设计特别有兴趣,可以学习本课程。只要坚持认真学习,多做练习,通过交流及时解决学习中的问题,一样可以学好。本课程已有不少初中同学完成了学习,而且成绩也很好。

Q:如何学好程序设计?
A:建议同学们在学习程序设计过程中,注意运用下面三种设计方法:
1、模仿设计
同学们初学程序设计,首先是模仿设计。所谓模仿就是参照某个成功的程序,做一些微小局部的改动,程序总体结构不变。
例如教材讲述了求1+2+3+……+100的程序编写,你可以模仿连加程序,尝试编写连乘1*2*3*……*10的程序。这个模仿只进行两个变化,一是加号改乘号;二是结果变量初始值由0改为1;三是循环截止由100改为10。
又例如教材介绍了两数求最大的程序,你可以模仿尝试编写求最小的程序。变化是小于号改为大于号。
又例如教材介绍日期结构体的程序,你可以模仿尝试编写时间结构体的程序,变化是输出日期和时间的格式不一样。
又例如教材介绍学生类的程序,你可以模仿尝试编写职员类的程序,比如仅仅变化学生的成绩属性为职员的薪水属性。
通过这样的模仿可以尽快掌握程序设计的基本方法。
2、多解设计
一题多解是程序设计的特色之一。同样一个问题可以设计出多种求解算法,自然可以编写设计出许多种程序,都能正确求解这个问题。当然这些程序之间比较,可能一些程序运行速度快,一些程序占用空间少。例如求1+2+3+……+100的问题,就可以设计出三种不同算法:一是直接用公式计算;二是从头循环加到尾部;三是从尾部循环加到头。这样就可以编写设计出三个不同的程序。在学习程序设计时,不能满足于一种求解程序,而应该多做变换,比如语句变换,C++有三种循环语句,可以尝试相互代换。又比如数据类型或结构变换,这样就可以设计不同的程序,然后分析每个程序的时空效率。
3、分解设计
    程序设计说穿了,就是让计算机按照你事先安排好的步骤进行求解工作。一个问题分几步求解,是由你来设计的。如何将问题分解成一个一个较小的子问题,是程序设计的核心。至于每个子问题涉及哪些数据类型?是采用函数结构,还是采用哪几条语句?就相对容易清晰了。同学们要善于分解,通过反复的训练,提高分解问题的能力。(顾老师)

Q:学习编程需要准备什么东西?
A:你可以拥有一台电脑,但不是必须的。学校的机房也是很好的去处,只要有电脑用就可以。对电脑的配置也没有要求,当前能用的电脑都可以。最好有个U盘之类的存储装置,将自己平时练习的程序保存下来,以备以后参考。保存在网上、保存在邮箱中也是不错的选择。教材或参考书应该有一本,一是编程前要阅读学习,二是在编程中经常需要查阅。

Q:学习C++程序设计使用什么软件好?
A:编程软件常常是各有优点。我们课程使用的是DEV C++。这是一款自由软件,使用简单,体积小,容易获得。其他的Visual C++6.0、VS2008~2012,Borland C++等都是很好的编程软件。有时间都熟悉一下是很好的选择,因为在考试、竞赛、招聘中会遇到各种不同的环境。


Q:课程结束后如何查看课程内容?

A:登录中国大学MOO C→ 点头像 → “我的课程” →已结束


Q:如何查看已结束的课程?

A:课程介绍页→课程图标下方(右上,开课时间上方)→“第**次开课”→选择“第8次开课”。