C++程序设计基础教学大纲Fundamentals of C++ Programming Subject Syllabus,课程信息SubjectInformation课程编号:开课学期:13100212001Subject IDSemester课程分类:所属课群:专业教育PA专业基础MFCategorySection课程学分:总学时/周:724.5Credit PointsTotal Hours/Weeks理论学时:实验学时:5616LECT. HoursEXP. HoursPBL学时:实践学时/周:00PBL HoursPRAC. Hours/Weeks开课学院:东北大学适用专业:计算机科学与技术CSTCollege悉尼智能科技学院Stream课程属性:课程模式:必修Compulsory自建NEUPatternMode李国瑞中方课程协调人成绩记载方式:百分制MarksNEU CoordinatorGuorui LiResult Type先修课程无Requisites英文参考教材Paul Deitel, C++ How to Program, Pearson.5t EditionENTextbooks中文参考教材谭浩强,《C++程序设计》,清华大学出版社,2015年,第三版CNTextbooks张冰,《面向对象程序设计C++语言编程》,机械工业出版社,2008教学资源:年,第一版;Resources钱能,《C++程序设计教程》,清华大学出版社,2005年,第二版。课程负责人(撰写人):李国瑞提交日期:单击或点击此处输入日期。Subject DirectorGuorui LiSubmitted Date李国瑞任课教师(含负责人):Taught byGuorui Li审核人:批准人:韩鹏史闻博Checked byApproved by批准日期:单击或点击此处输入日期。Approved Date1 / 23
1 / 23 C++程序设计基础 教学大纲 Fundamentals of C++ Programming Subject Syllabus 一、课程信息 Subject Information 课程编号: Subject ID 3100212001 开课学期: Semester 1 课程分类: Category 专业教育 PA 所属课群: Section 专业基础 MF 课程学分: Credit Points 4.5 总学时/周: Total Hours/Weeks 72 理论学时: LECT. Hours 56 实验学时: EXP. Hours 16 PBL 学时: PBL Hours 0 实践学时/周: PRAC. Hours/Weeks 0 开课学院: College 东北大学 悉尼智能科技学院 适用专业: Stream 计算机科学与技术 CST 课程属性: Pattern 必修 Compulsory 课程模式: Mode 自建 NEU 中方课程协调人: NEU Coordinator 李国瑞 Guorui Li 成绩记载方式: Result Type 百分制 Marks 先修课程: Requisites 无 英文参考教材: EN Textbooks Paul Deitel, C++ How to Program, Pearson.5th Edition. 中文参考教材: CN Textbooks 谭浩强,《C++程序设计》,清华大学出版社,2015 年,第三版 教学资源: Resources 张冰,《面向对象程序设计 C++语言编程》,机械工业出版社,2008 年,第一版; 钱能,《C++程序设计教程》,清华大学出版社,2005 年,第二版。 课程负责人(撰写人): Subject Director 李国瑞 Guorui Li 提交日期: Submitted Date 单击或点击此处输 入日期。 任课教师(含负责人): Taught by 李国瑞 Guorui Li 审核人: Checked by 韩鹏 批准人: Approved by 史闻博 批准日期: Approved Date 单击或点击此处输 入日期
二、教学目标SubjectLearningObjectives(SLOs)注:毕业要求及指标点可参照悉尼学院本科生培养方案,可根据实际情况增减行数Note: GA and index can be referred from undergraduate program in SSTC website. Please add/reduce lines based on subject本课程为计算机科学与技术专业本科生的主干专业课,从程序数据类型和表达式、基于过程的程序设计、基于对象的程序设计、面向对象的程序设计四个方面,系统阐述了程序设计的基本过程和主要知识点。《C++程序设计》是计算机科学与技术专业本科生的一门基础课程,它是为学生掌握当前最基本的面向对象程序设计方法而设置的。通过本课程的学习,使学生比较熟练地掌握C++语言的语法规则、基本概念和简单算法,掌握基本的程序设计过程和技巧:具备初步的高级语言程序设计能力和编程经验,能够熟练应用集成环境进行C++语言的编写、编译与调试,在此基础上增加面向对象的基本知识,掌握C++输入输出流操作,以及类的基本定义和使用。该课程培养学生应用问题分析、程序设计和编码、程序调试能力,使学生掌握必要的算法设计技能,初步掌握软件开发的思路和方法,掌握软件工程技术规范,为后继课程的学习、为各类专业应用打下坚实的基础,达到使用C++语言工具解决应用问题的水平。This course isthe main professional course for undergraduatesmajoring in computer science. It systematically expounds the basicprocess and main knowledge points of program design from fouraspects:program data type and expression, process based program整体目标:design, object-based program design and object-oriented programOverallObjectivedesign.C++programming is a basic course for undergraduates majoring incomputer science.It is designed for students to master the most basicobject-oriented programming method.Through the studyof this course,students can master the grammar rules, basic concepts and simplealgorithms of C + + language, and master the basic programmingprocess and skills; Have the preliminary high-level languageprogramming ability and programming experience, can skillfully usethe integrated environment for C + + language writing, compiling anddebugging,onthisbasis,increasethebasicknowledgeofobject-oriented, master the C + + input and output stream operation, aswell as thebasicdefinition and useof class.This course cultivates students'abilities of application problemanalysis, program design and coding, and program debugging. Itenables students to master the necessary algorithm design skillspreliminarily master the ideas and methods of software development,and masterthetechnical specifications of software engineering,soas tolay a solid foundation for the study of subsequent courses and variousprofessional applications, and reach the level of using C + + languagetools to solve application problems2/23
2 / 23 二、教学目标 Subject Learning Objectives (SLOs) 注:毕业要求及指标点可参照悉尼学院本科生培养方案,可根据实际情况增减行数 Note: GA and index can be referred from undergraduate program in SSTC website. Please add/reduce lines based on subject. 整体目标: Overall Objective 本课程为计算机科学与技术专业本科生的主干专业课,从程序数据 类型和表达式、基于过程的程序设计、基于对象的程序设计、面向 对象的程序设计四个方面,系统阐述了程序设计的基本过程和主要 知识点。 《C++程序设计》是计算机科学与技术专业本科生的一门基础课程, 它是为学生掌握当前最基本的面向对象程序设计方法而设置的。通 过本课程的学习,使学生比较熟练地掌握 C++语言的语法规则、基 本概念和简单算法,掌握基本的程序设计过程和技巧;具备初步的 高级语言程序设计能力和编程经验,能够熟练应用集成环境进行 C++语言的编写、编译与调试,在此基础上增加面向对象的基本知 识,掌握 C++输入输出流操作,以及类的基本定义和使用。 该课程培养学生应用问题分析、程序设计和编码、程序调试能力, 使学生掌握必要的算法设计技能,初步掌握软件开发的思路和方 法,掌握软件工程技术规范,为后继课程的学习、为各类专业应用 打下坚实的基础,达到使用 C++语言工具解决应用问题的水平。 This course is the main professional course for undergraduates majoring in computer science. It systematically expounds the basic process and main knowledge points of program design from four aspects: program data type and expression, process based program design, object-based program design and object-oriented program design. C + + programming is a basic course for undergraduates majoring in computer science. It is designed for students to master the most basic object-oriented programming method. Through the study of this course, students can master the grammar rules, basic concepts and simple algorithms of C + + language, and master the basic programming process and skills; Have the preliminary high-level language programming ability and programming experience, can skillfully use the integrated environment for C + + language writing, compiling and debugging, on this basis, increase the basic knowledge of object-oriented, master the C + + input and output stream operation, as well as the basic definition and use of class. This course cultivates students' abilities of application problem analysis, program design and coding, and program debugging. It enables students to master the necessary algorithm design skills, preliminarily master the ideas and methods of software development, and master the technical specifications of software engineering, so as to lay a solid foundation for the study of subsequent courses and various professional applications, and reach the level of using C + + language tools to solve application problems
掌握C++程序设计的初步知识,了解程序发展史和软件工程的基本概念。1-1Master the preliminary knowledge of C ++programming.understand the history of program development and the basicconcepts of software engineering掌握程序设计中三种设计结构、函数、数组、指针和用户自定义类型的使用,建立起基于过程的程序设计思想,为后续课程打下基础。1-2Master the use of three kinds of design structure, function,array, pointer and user-defined type in the program designestablish the process based program design idea, and lay thefoundation for the follow-up courses在基于过程设计基础上,进一步掌握基于对象的程序设计思(1)专业目标:想,建立类和对象的基本概念,逐步培养学生面向对象程序Professional Ability设计的思路。1-3On the basis of process based design, we shouldfurther mastertheidea ofobject-basedprogramming,establishthebasicconcepts of class and object, and gradually cultivate studentsthinking of object-oriented programming掌握继承和多态,了解继承在软件开发中的重要意义,使得学生具有面向对象程序设计的能力。1-4Masterinheritanceandpolymorphism,understandtheimportanceof inheritance in software development, so thatstudents have the ability of object-oriented programming.能够在软件设计的团队中承担个体、团队成员以及负责人的角色。1-5Be able to take on the role of individual, team member andleaderinthesoftwaredesignteam理解计算机编程对于国家信息化发展重要意义。2-1Understanding computerprogrammingisofgreat significancetothedevelopment of national informatization(2)德育目标:认知当前全球编程领域发展前沿及相关中国企业的核心竞Essential Quality争力。2-2Recognize the current development frontier of globalprogramming and the core competitiveness of relevant Chineseenterprises课程教学目标与毕业要求的对应关系MatrixofGA&SLOs毕业要求GA指标点GAIndex教学目标SLOs1、工程知识:能够将数学、指标点1-2:掌握程序设计、数据结构、自然科学、工程基础和专业算法分析与设计、计算机数字系统、操知识用于解决复杂工程间作系统等专业知识,具备计算机程序设题。1-1, 1-2, 1-3,1-4计开发能力和计算机与信息系统设计开GA1.Engineering发与维护能力。Knowledge: Applyknowledge1-2: Mastery of programming, data naturalofmathematics,3/23
3 / 23 (1)专业目标: Professional Ability 1-1 掌握 C++程序设计的初步知识,了解程序发展史和软件工 程的基本概念。 Master the preliminary knowledge of C + + programming, understand the history of program development and the basic concepts of software engineering. 1-2 掌握程序设计中三种设计结构、函数、数组、指针和用户自 定义类型的使用,建立起基于过程的程序设计思想,为后续 课程打下基础。 Master the use of three kinds of design structure, function, array, pointer and user-defined type in the program design, establish the process based program design idea, and lay the foundation for the follow-up courses. 1-3 在基于过程设计基础上,进一步掌握基于对象的程序设计思 想,建立类和对象的基本概念,逐步培养学生面向对象程序 设计的思路。 On the basis of process based design, we should further master the idea of object-based programming, establish the basic concepts of class and object, and gradually cultivate students' thinking of object-oriented programming. 1-4 掌握继承和多态,了解继承在软件开发中的重要意义,使得 学生具有面向对象程序设计的能力。 Master inheritance and polymorphism, understand the importance of inheritance in software development, so that students have the ability of object-oriented programming. 1-5 能够在软件设计的团队中承担个体、团队成员以及负责人的 角色。 Be able to take on the role of individual, team member and leader in the software design team. (2)德育目标: Essential Quality 2-1 理解计算机编程对于国家信息化发展重要意义。 Understanding computer programming is of great significance to the development of national informatization. 2-2 认知当前全球编程领域发展前沿及相关中国企业的核心竞 争力。 Recognize the current development frontier of global programming and the core competitiveness of relevant Chinese enterprises. 课程教学目标与毕业要求的对应关系 Matrix of GA & SLOs 毕业要求 GA 指标点 GA Index 教学目标 SLOs 1、工程知识:能够将数学、 自然科学、工程基础和专业 知识用于解决复杂工程问 题。 GA1. Engineering Knowledge: Apply knowledge of mathematics, natural 指标点 1-2:掌握程序设计、数据结构、 算法分析与设计、计算机数字系统、操 作系统等专业知识,具备计算机程序设 计开发能力和计算机与信息系统设计开 发与维护能力。 1-2: Mastery of programming, data 1-1,1-2,1-3,1-4
science,engineeringstructure, algorithms analysis and design,fundamentalsandancomputer digital system, and operatingengineering specialization tothesolutionofcomplexsystem, etc., and capable of computerengineering problemsprogramming and design, design andmaintenanceof computerand informationsystems:指标点3-1:能够设计针对本专业相关复3、设计/开发解决方案:能杂工程问题的解决方案,能够设计和开够设计针对复杂工程问题的发实现特定功能、满足特定需求的计算解决方案,设计满足特定需机、软件或网络系统。求的系统、单元或流程,并3-1: Capable of designing solutions to能够在设计环节中体现创新1-3complex engineering problems related to意识,考虑社会、健康、安the major, and capable of designing and全、法律、文化以及环境等developingcomputers,softwareor因素。networksystemstthatcanfunctionDesign/DevelopmentofspecificallyandmeetspecificSolutions Design solutionsrequirementsforcomplexengineering指标点3-3:能够在设计和开发的各个环problems and design systems,components orprocessesthat节中综合考虑社会、健康、安全、法律、meet specifiedneedsswith文化以及环境等因素。1-3, 2-1appropriate consideration for3-3:Capable of taking social, health,public health, and safety,safety, legal, cultural and environmentalcultural,societalandfactors in consideration during all aspectsenvironmental considerations.of design and development.4、研究:能够基于科学原理并采用科学方法对复杂工程问题进行研究,包括设计实验、分析与解释数据、并通过信息综合得到合理有效的指标点4-1:能够基于科学原理并采用科结论。学方法,在本专业相关理论指导下对复Investigation:Conduct杂工程问题设计实验进行研究。investigationsofcomplexCapable of designing experiments and1-3,2-2problemsusingdoing research on complex engineeringresearch-basedknowledgeproblems based on scientific principles andandmethodsresearchscientific methods, under the guidance ofincludingdesignofrelated theories of the major.andexperiments,analysisof data, andinterpretationsynthesisofinformation toprovide valid conclusions8、职业规范:具有人文社会指标点8-2:了解本专业相关的职业道德2-14 / 23
4 / 23 science, engineering fundamentals and an engineering specialization to the solution of complex engineering problems. structure, algorithms analysis and design, computer digital system, and operating system, etc., and capable of computer programming and design, design and maintenance of computer and information systems; 3、设计/开发解决方案:能 够设计针对复杂工程问题的 解决方案,设计满足特定需 求的系统、单元或流程,并 能够在设计环节中体现创新 意识,考虑社会、健康、安 全、法律、文化以及环境等 因素。 Design/Development of Solutions: Design solutions for complex engineering problems and design systems, components or processes that meet specified needs with appropriate consideration for public health, and safety, cultural, societal and environmental considerations. 指标点 3-1:能够设计针对本专业相关复 杂工程问题的解决方案,能够设计和开 发实现特定功能、满足特定需求的计算 机、软件或网络系统。 3-1: Capable of designing solutions to complex engineering problems related to the major, and capable of designing and developing computers, software or network systems that can function specifically and meet specific requirements. 1-3 指标点 3-3:能够在设计和开发的各个环 节中综合考虑社会、健康、安全、法律、 文化以及环境等因素。 3-3: Capable of taking social, health, safety, legal, cultural and environmental factors in consideration during all aspects of design and development. 1-3,2-1 4、研究:能够基于科学原理 并采用科学方法对复杂工程 问题进行研究,包括设计实 验、分析与解释数据、并通 过信息综合得到合理有效的 结论。 Investigation: Conduct investigations of complex problems using research-based knowledge and research methods including design of experiments, analysis and interpretation of data, and synthesis of information to provide valid conclusions. 指标点 4-1:能够基于科学原理并采用科 学方法,在本专业相关理论指导下对复 杂工程问题设计实验进行研究。 Capable of designing experiments and doing research on complex engineering problems based on scientific principles and scientific methods, under the guidance of related theories of the major. 1-3,2-2 8、职业规范:具有人文社会 指标点 8-2:了解本专业相关的职业道德 2-1
科学素养、社会责任感,与规范并认识其重要性,具备良好的职能够在工程实践中理解并遵守业道德和社会责任感,能够对工程实践工程职业道德和规范,履行活动的社会道德进行判断和评鉴,并履责任。行相应的责任:8-2: Understanding of the professionalethicalEthics:Applyethics and norms relatedtothemajor andprinciplesand1committorecognizeitsimportance,goodprofessionalethicsandprofessionalandsocialethicsresponsibilities and norms ofresponsibility,capable of judging andengineering practice.evaluating the social ethics of engineeringpractice activities and fulfill correspondingresponsibilities三、教学内容Content(Topics)注:以中英文填写,各部分内容的表格可根据实际知识单元数量进行复制、扩展或缩减Note: Filled in both CN and EN, extend or reduce based on the actual numbers of knowledge unit(1)理论教学Lecture知识单元序号:支撑教学目标11-1,2-1,2-2Knowledge Unit No.SLOs Supported知识单元名称C++初步知识PreliminaryknowledgeofC++Unit Title从C到C++;最简单的C++程序;From C to C +; The simplest c + + program知识点:C++程序的构成和书写形式;Knowledge DeliveryC + + program composition and writing form;C++程序的编写和实现;关于C++上机实践C ++ programming and implementation; Practice ofC++了解:C++程序设计的基本内容RecognizeThebasiccontentofc++programming学习目标:理解:Learning ObjectivesUnderstand掌握:Master了解计算机编程对于社会经济发展的重要意义德育目标Understanding the significance of computer programming for socialMoral ObjectivesandeconomicdevelopmentC++程序的构成和书写形式;理解程序的开发过程。重点:C + + program composition and writing form; Understand the processKey Pointsofprogramdevelopment难点:C++程序的构成和书写形式。Focal pointsC++program compositionand writingform5 / 23
5 / 23 科学素养、社会责任感,能 够在工程实践中理解并遵守 工程职业道德和规范,履行 责任。 Ethics: Apply ethical principles and commit to professional ethics and responsibilities and norms of engineering practice. 与规范并认识其重要性,具备良好的职 业道德和社会责任感,能够对工程实践 活动的社会道德进行判断和评鉴,并履 行相应的责任; 8-2:Understanding of the professional ethics and norms related to the major and recognize its importance, good professional ethics and social responsibility, capable of judging and evaluating the social ethics of engineering practice activities and fulfill corresponding responsibilities. 三、教学内容 Content (Topics) 注:以中英文填写,各部分内容的表格可根据实际知识单元数量进行复制、扩展或缩减 Note: Filled in both CN and EN, extend or reduce based on the actual numbers of knowledge unit (1) 理论教学 Lecture 知识单元序号: Knowledge Unit No. 1 支撑教学目标: SLOs Supported 1-1,2-1,2-2 知识单元名称 Unit Title C++初步知识 Preliminary knowledge of C + + 知识点: Knowledge Delivery 从 C 到 C++;最简单的 C++程序; From C to C +; The simplest c + + program C++程序的构成和书写形式; C + + program composition and writing form; C++程序的编写和实现;关于 C++上机实践 C + + programming and implementation; Practice of C + + 学习目标: Learning Objectives 了解: Recognize C++程序设计的基本内容 The basic content of c++ programming 理解: Understand 掌握: Master 德育目标 Moral Objectives 了解计算机编程对于社会经济发展的重要意义 Understanding the significance of computer programming for social and economic development 重点: Key Points C++程序的构成和书写形式;理解程序的开发过程。 C + + program composition and writing form; Understand the process of program development. 难点: Focal points C++程序的构成和书写形式。 C + + program composition and writing form