实验(上机)部分 号 实验项目名称 学时 实验内容、要求及时间安排、仪器要求 类型 掌握文件类型的定义及其基本读写方法:掌握从文件中 文件 读写结构体数组数据的方法。 时间安排:第10章3.文件的读写授课后: 必开设计 仪器要求:PC机、VC+6.0或DEVC+软件 五、说明 “℃语言程序设计A“是整个计算机基础课程体系的重要组成部分。计算机基础课程体系 分为“宽专融”三个层次,“计算机基础”是“C语言程序设计A“的先修课程,属于“宽“的层次, 主要培养学生对计算机系统的基本理解,提升信息素养。“C语言程序设计A“属于“专”的层 次,主要目的是让学生深入掌握一种具体的计算机技术,并培养学生利用计算机技术分析解 决实际问题的能力。有些专业开设“数据结构”、“计算机网络”等课程,也需要以“℃语言程 序设计A”课程为基础。在“融”的层面,各专业会设置一些以相应专业为背景融合计算机技 术的交叉型课程,如“电子商务概论”、“信息系统分析与设计”、“机器人学”、“信息安全技 术”、“统计应用软件”等,主要目的是培养学生利用计算机技术解决本专业本领域问题的能 力,这些课程也需要以“C语言程序设计A“课程为基础。 六、学生成绩考核与评定方式 总成绩=期末考试成绩(60%)+平时成绩(15%)+实验成绩(25%)。其中期末考试采 取笔试或上机方式,闭卷。 实验成绩的评定方式为:(1)实验成绩由指导教师从以下几方面综合评定:预习情况 程序调试情况、实验报告等,并以每次实验成绩累计:(2)实验课成绩在课程中占25%的 比例。 七、建议散材与参考书 建议教材:1.李文杰等编著,C语言程序设计(第2版),清华大学出版社,201410 2.徐英慧等编著,C语言习题、实验指导及课程设计(第3版),清华大学出版 社,2018. 参考书:1.谭浩强编若,C程序设计(第4版),清华大学出版社,2010.6 2.何钦铭颜晖主编,C语言程序设计(第3版),高等教育出版社,2015.12 3.EicS.Roberts编著翁惠玉等译,C语言的科学和艺术,机械工业出版社,2005.3 八、课程中英文简介 《C语言程序设计A》是大学计算机基础教学系列中的核心课程,主要讲授高级程序设 计语言的基本知识和程序设计的方法与技术。该课程是非计算机专业学生在学习完《计算机 基础》课程的基础上开设的第一门高级语言程序设计课,属于非计算机专业计算机基础教学
5 实验(上机)部分 序 号 实验项目名称 学 时 实验内容、要求及时间安排、仪器要求 必开/ 选开 实验 类型 7 文件 2 掌握文件类型的定义及其基本读写方法;掌握从文件中 读写结构体数组数据的方法。 时间安排:第 10 章 3. 文件的读写 授课后; 仪器要求:PC 机、VC++6.0 或 DEV C++软件 必开 设计 五、说明 “C 语言程序设计 A”是整个计算机基础课程体系的重要组成部分。计算机基础课程体系 分为“宽专融”三个层次,“计算机基础”是“C语言程序设计A”的先修课程,属于“宽”的层次, 主要培养学生对计算机系统的基本理解,提升信息素养。“C语言程序设计A”属于“专”的层 次,主要目的是让学生深入掌握一种具体的计算机技术,并培养学生利用计算机技术分析解 决实际问题的能力。有些专业开设“数据结构”、“计算机网络”等课程,也需要以“C语言程 序设计A”课程为基础。在“融”的层面,各专业会设置一些以相应专业为背景融合计算机技 术的交叉型课程,如“电子商务概论”、“信息系统分析与设计”、“机器人学”、“信息安全技 术”、“统计应用软件”等,主要目的是培养学生利用计算机技术解决本专业本领域问题的能 力,这些课程也需要以“C语言程序设计A”课程为基础。 六、学生成绩考核与评定方式 总成绩=期末考试成绩(60%)+平时成绩(15%)+实验成绩(25%)。其中期末考试采 取笔试或上机方式,闭卷。 实验成绩的评定方式为:(1)实验成绩由指导教师从以下几方面综合评定:预习情况、 程序调试情况、实验报告等,并以每次实验成绩累计;(2)实验课成绩在课程中占 25%的 比例。 七、建议教材与参考书 建议教材:1. 李文杰等编著,C 语言程序设计(第 2 版),清华大学出版社,2014.10 2. 徐英慧等编著,C 语言习题、实验指导及课程设计(第 3 版),清华大学出版 社,2018.1 参考书:1. 谭浩强编著,C 程序设计(第 4 版),清华大学出版社,2010.6 2. 何钦铭 颜晖主编,C 语言程序设计(第 3 版),高等教育出版社,2015.12 3. Eric S. Roberts 编著 翁惠玉等译,C 语言的科学和艺术,机械工业出版社,2005.3 八、课程中英文简介 《C 语言程序设计 A》是大学计算机基础教学系列中的核心课程,主要讲授高级程序设 计语言的基本知识和程序设计的方法与技术。该课程是非计算机专业学生在学习完《计算机 基础》课程的基础上开设的第一门高级语言程序设计课,属于非计算机专业计算机基础教学
中第二层次的课程。 通过本课程的学习,使学生较系统地掌握面向过程的编程思想和方法,能够使用C语 言编写出符合结构化程序设计思想的程序。本课程主要任务是,介绍C语言的数据类型、 表达式、数据的输入输出、预编译、数组、函数、指针、结构体、文件的概念,使学生基本 掌握一门高级语言,掌握结构化程序设计的思想,并运用C语言进行程序开发,逐步培养 分析、解决实际问题的能力,并为后续的课程奠定扎实的程序设计基础。 Programming in C Version A is a core course in the University Computer Foundation Teaching Series,and mainly teaches the basic knowledge and program design methods and techniques about advanced programming language.The course is the door for learning high-level language programming for non-computer science students based on completing the course of Computer Foundation,belongs to the second-level courses in basic computer teaching of non-computer professional. Through learning the course.the students should master the ideas and methods of process-oriented programming to be able to use the C language program of structured program design ideas.The main task of this course is to introduce the data type of the C language.the concept of expression,the input and output of data,pre-compiled,arrays.functions.pointers structures and file,to enable students to almost master a high-level language,to grasp the idea of structured programming program development and use of the C language,and gradually to develop the ability of analysis and solve practical problems,and to lay a solid programming foundation for subsequent courses. 《C语言程序设计B》 课程编号 1BH11001 学分 3 总学时 48 实验/上机学时 上机:16学时 课程名称 C语言程序设计B 英文名称 Programming in C Version B 机械设计制造及其自动化、机械电子 工程、测控技术与仪器、光电信息科 学与工程、自动化、 电气工程及其白 课程类别 必修 适用专业 动化、自动化(卓越)一、新能源科学 与工程、车辆工程、工业设计、机械 设计制造及其自动化(外)、机械电 子工程(外)以、测控技术与仪器(外) 执笔人 徐英慧 审核人 贾艳萍 先修课程 计算机基础 6
6 中第二层次的课程。 通过本课程的学习,使学生较系统地掌握面向过程的编程思想和方法,能够使用 C 语 言编写出符合结构化程序设计思想的程序。本课程主要任务是,介绍 C 语言的数据类型、 表达式、数据的输入输出、预编译、数组、函数、指针、结构体、文件的概念,使学生基本 掌握一门高级语言,掌握结构化程序设计的思想,并运用 C 语言进行程序开发,逐步培养 分析、解决实际问题的能力,并为后续的课程奠定扎实的程序设计基础。 Programming in C Version A is a core course in the University Computer Foundation Teaching Series, and mainly teaches the basic knowledge and program design methods and techniques about advanced programming language. The course is the door for learning high-level language programming for non-computer science students based on completing the course of Computer Foundation, belongs to the second-level courses in basic computer teaching of non-computer professional. Through learning the course, the students should master the ideas and methods of process-oriented programming to be able to use the C language program of structured program design ideas. The main task of this course is to introduce the data type of the C language, the concept of expression, the input and output of data, pre-compiled, arrays, functions, pointers, structures and file, to enable students to almost master a high-level language, to grasp the idea of structured programming program development and use of the C language, and gradually to develop the ability of analysis and solve practical problems, and to lay a solid programming foundation for subsequent courses. 《C 语言程序设计 B》 课程编号 1BH11001 学 分 3 总 学 时 48 实验/上机学时 上机:16 学时 课程名称 C 语言程序设计 B 英文名称 Programming in C Version B 课程类别 必修 适用专业 机械设计制造及其自动化、机械电子 工程、测控技术与仪器、光电信息科 学与工程、自动化、电气工程及其自 动化、自动化(卓越)、新能源科学 与工程、车辆工程、工业设计、机械 设计制造及其自动化(外)、机械电 子工程(外)、测控技术与仪器(外) 执 笔 人 徐英慧 审 核 人 贾艳萍 先修课程 计算机基础
一、课程的地位与作用 《C语言程序设计B》是大学计算机基础教学系列中的核心课程,主要讲授高级程序设 计语言的基本知识和程序设计的方法与技术,是非计算机专业学生在学习完《计算机基础》 课程的基础上开设的第一门高级语言程序设计课,属于非计算机专业计算机基础教学中第二 层次的课程。 本课程是面向理工类非计算机专业的一门通识必修课。通过本课程的学习,使学生较系 统地掌握结构化程序设计思想和方法,能够使用C语言设计与编写解决基本应用问题的程 序,最终提高非计算机专业学生的计算机应用能力、分析问题和解决实际问题的能力以及计 算思维能力,为后续的课程学习奠定信息技术基础。 二、课程对应的毕业要求 1.掌握扎实的自然科学基础知识,坚实的专业基础理论知识:学习一定的计算机技术、 控制技术以及信息技术等现代新技术知识:获得必要的工程实践训练。 2.能够将数学、自然科学、计算机科学知识与各专业知识相结合,识别、表达、并通 过文献研究分析控制系统与工程领域复杂工程问题,以获得有效结论,并解决各专业领域复 杂工程科学技术问题。 3.能够针对各专业复杂的工程问题,开发、选择与使用恰当的技术、资源、现代工程 工具和信息技术工具,并理解其局限性。 4.能够设计针对复杂工程问题的解决方案,应用专业理论和方法设计满足特定需求的 系统,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等 因素。 5.能利用图书馆资源进行文献检索、阅读专业文献,具有较强的收集处理信息的能力。 能够基于科学原理并采用科学方法对控制系统与工程领域复杂工程问题进行研究,包括设计 实验、分析与解释数据、并通过信息综合得到合理有效的结论。 6.具有自主学习和终身学习的意识,有不断学习和适应发展的能力。 7具有与他人和社会进行有效沟通的能力,包括能够理解和撰写效果良好的报告和设计 文件,进行有效的陈述发言:具有一定的国际视野和跨文化交流的能力。 三、课程教学目标 1.知识目标 使学生熟练掌握C语言中的基本知识,包括:C语言的数据类型、表达式、数据的输 入输出、顺序程序结构、选择程序结构、循环程序结构、函数、数组、指针、结构体等概念 及应用,以及典型算法的实现 2.能力目标 培养学生基本的计算机程序设计能力,使学生具有较强的逻辑思维能力、抽象思维能力 和独立思考能力。 >
7 一、课程的地位与作用 《C 语言程序设计 B》是大学计算机基础教学系列中的核心课程,主要讲授高级程序设 计语言的基本知识和程序设计的方法与技术,是非计算机专业学生在学习完《计算机基础》 课程的基础上开设的第一门高级语言程序设计课,属于非计算机专业计算机基础教学中第二 层次的课程。 本课程是面向理工类非计算机专业的一门通识必修课。通过本课程的学习,使学生较系 统地掌握结构化程序设计思想和方法,能够使用 C 语言设计与编写解决基本应用问题的程 序,最终提高非计算机专业学生的计算机应用能力、分析问题和解决实际问题的能力以及计 算思维能力,为后续的课程学习奠定信息技术基础。 二、课程对应的毕业要求 1. 掌握扎实的自然科学基础知识,坚实的专业基础理论知识;学习一定的计算机技术、 控制技术以及信息技术等现代新技术知识;获得必要的工程实践训练。 2.能够将数学、自然科学、计算机科学知识与各专业知识相结合,识别、表达、并通 过文献研究分析控制系统与工程领域复杂工程问题,以获得有效结论,并解决各专业领域复 杂工程科学技术问题。 3.能够针对各专业复杂的工程问题,开发、选择与使用恰当的技术、资源、现代工程 工具和信息技术工具,并理解其局限性。 4.能够设计针对复杂工程问题的解决方案,应用专业理论和方法设计满足特定需求的 系统,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等 因素。 5. 能利用图书馆资源进行文献检索、阅读专业文献,具有较强的收集处理信息的能力。 能够基于科学原理并采用科学方法对控制系统与工程领域复杂工程问题进行研究,包括设计 实验、分析与解释数据、并通过信息综合得到合理有效的结论。 6. 具有自主学习和终身学习的意识,有不断学习和适应发展的能力。 7 具有与他人和社会进行有效沟通的能力,包括能够理解和撰写效果良好的报告和设计 文件,进行有效的陈述发言;具有一定的国际视野和跨文化交流的能力。 三、课程教学目标 1. 知识目标 使学生熟练掌握 C 语言中的基本知识,包括:C 语言的数据类型、表达式、数据的输 入输出、顺序程序结构、选择程序结构、循环程序结构、函数、数组、指针、结构体等概念 及应用,以及典型算法的实现。 2. 能力目标 培养学生基本的计算机程序设计能力,使学生具有较强的逻辑思维能力、抽象思维能力 和独立思考能力
3.认知目标 通过实验操作和编程练习,让学生体验如何运用编程技术来解决专业课上遇到的问题, 及时总结学习内容,提高学习效果。在掌握基本教学内容的同时,让学生具备自主学习新的 编程技术及手段的能力,以适应未来计算技术的飞速发展。 四、课程教学内容提要与基本要求 理论部分 序号 教学内容提要 基本要求 学时 了视个五当口. 第1章程序设计概述 了解法的概知结占 程序和程序设计 2.C语言概还 理解常见的算法表示方法。 掌握C语言程序上机步骤及编程环境的基木操作。 3算法及其描述 4.C语言程序开发过程 重难点说明:C语言的基本结构,C语言程序的开 发步骤。 第2章基本数据类型 1数据类型概述 堂视其本数据指刑. 标识符、常量和量 掌握数据的输入和输出方法 3.基本的数据类型 重难点说明:输入 和输 出函数的使用。 4.数据的输入和输出 第3章顺序结构程序设计 1算术运算和算术表式 掌握基本运算符和表达式的使用:掌握顺序结构程 2威值运算和赋值表达式 序设计。 2 3.自增自减运算 重难点说明:各种运算符的使用 4.顺序结构程序设计 第4章选择结构程序设计 1关系运算和罗辑坛算 堂握选择结构程序设计 4 2.使用f语句实现的选择结构 重难点说明:嵌套的if-else结构 3选择结构程序设计举例 第5章循环结构程序设计 掌握循环结构程序设计。 1三种循环语句 重难点说明:嵌套的循环结构,循环结构程序的算 6 )话环瑞在 法设计, 3.循环结构程序设计举例 第6章模块化程序设计一函数 掌握函数的定义、声明和调用方法 函勒的定 掌握函数的嵌套调用: 2函数的调用和参数传递 理解程序的递归调用: 3.嵌套调用和递归调用 理解局部变量、全局变量的使用」 4.变量的作用域 重难点说明:函数的定义及调用,递归函数的设计。 第7章数组 掌握数组的概念: 1.一维数组 掌握数组、字符串的编程方法,掌握常用的系统字 6 2.二维数组 符串处理函数(gets、puts、strlen、strepy、stremp
8 3. 认知目标 通过实验操作和编程练习,让学生体验如何运用编程技术来解决专业课上遇到的问题, 及时总结学习内容,提高学习效果。在掌握基本教学内容的同时,让学生具备自主学习新的 编程技术及手段的能力,以适应未来计算技术的飞速发展。 四、课程教学内容提要与基本要求 理论部分 序号 教学内容提要 基本要求 学时 1 第 1 章程序设计概述 1.程序和程序设计 2.C 语言概述 3.算法及其描述 4.C 语言程序开发过程 了解 C 语言概况; 了解算法的概念和特点; 理解常见的算法表示方法; 掌握 C 语言程序上机步骤及编程环境的基本操作。 重难点说明:C 语言的基本结构,C 语言程序的开 发步骤。 1 2 第 2 章基本数据类型 1.数据类型概述 2.标识符、常量和变量 3.基本的数据类型 4.数据的输入和输出 掌握基本数据类型; 掌握数据的输入和输出方法。 重难点说明:输入和输出函数的使用。 3 3 第 3 章顺序结构程序设计 1.算术运算和算术表达式 2.赋值运算和赋值表达式 3.自增自减运算 4.顺序结构程序设计 掌握基本运算符和表达式的使用;掌握顺序结构程 序设计。 重难点说明:各种运算符的使用。 2 4 第 4 章选择结构程序设计 1.关系运算和逻辑运算 2.使用 if 语句实现的选择结构 3.选择结构程序设计举例 掌握选择结构程序设计。 重难点说明:嵌套的 if-else 结构。 2 5 第 5 章循环结构程序设计 1.三种循环语句 2.循环嵌套 3.循环结构程序设计举例 掌握循环结构程序设计。 重难点说明:嵌套的循环结构,循环结构程序的算 法设计。 6 6 第 6 章 模块化程序设计—函数 1.函数的定义 2.函数的调用和参数传递 3.嵌套调用和递归调用 4.变量的作用域 掌握函数的定义、声明和调用方法; 掌握函数的嵌套调用; 理解程序的递归调用; 理解局部变量、全局变量的使用。 重难点说明:函数的定义及调用,递归函数的设计。 4 7 第 7 章数组 1.一维数组 2.二维数组 掌握数组的概念; 掌握数组、字符串的编程方法,掌握常用的系统字 符串处理函数(gets、puts、strlen、strcpy、strcmp、 6
理论部分 序号 教学内容提要 基木要求 学时 3.字符数组 strcat)。 重难点说明:排序算法、字符串应用。 第8章指针 1指针的概念 掌握指针的概念及基本处理 掌握指针与数组的对应关系: 2指针变量的定义和使用 掌握使用指针处理字符串的方法: 3使用指针指问一维数组 掌握指针作为函数参数的应用。 4指针作为函数的参数 5.回指针的函数 重难点说明:指针的概念,指针作为函数的参数 第9音结构体举刑 结构体类型和结构体变量的 掌握结构体类型的定义及结构体变量的引用方法 定义 掌握结构体数组的定义和使用 理解结构体指针的定义及使用: 9 2.结构体成员的引用 3结构体数组 理解单向链表的创建和遍历: 4.结构体指针 理解ypedef定义类型的方法。 5.链表 重难点说明:结构体成员的引用,链表 实验(上机)部分 序 号 实验项目名称 学时 实验内容、要求及时间安排、仪器要求 熟悉C语言的上机环境及简单的程序调试方法:掌 握常见的格式化输入输出方法:掌握基本运算符和表 顺序和选择结构 2 达式的使用:掌握if-else语句:学会顺序结构和选 必开 设计 程序设计 结构程序设计的基本方法。 时间安排:第4章3.选择结构程序设计举例授课后 仪器要求:PC机、VC++6.0或DEVC++软件 循环结构程序设 掌握while、do-while和for语句以及循环的嵌套。 2 时间安:第5章3.循环结构程序设计举例授课后: 必开设计 仪器要求:PC机、VC+6.0或DEVC+软件 掌握函数的定义和使用。 模块化程序设计 时间安排:第6章4.变量的作用域授课后: 必开设计 仪器要求:PC机、VC+6.0或DEVC+软件 掌握一维数组、字符数组的使用:掌握二维数组的使用。 时间安推:第一次上机在第7登1一维数组授课 4 数组应用 之后:第二次上机在第7章3.字符数组授课之后 必开设计 仪器要求:PC机、VC+6.0或DEVC+软件 掌握指针的定义和使用,掌握指针作函数参数的应用。 5 指针 时间安排:第8章5.返回指针的函数授课后: 必开设计 仪器要求:PC机、VC+6.0或DEVC+软件 0
9 理论部分 序号 教学内容提要 基本要求 学时 3.字符数组 strcat)。 重难点说明:排序算法、字符串应用。 8 第 8 章指针 1.指针的概念 2.指针变量的定义和使用 3.使用指针访问一维数组 4.指针作为函数的参数 5.回指针的函数 掌握指针的概念及基本处理; 掌握指针与数组的对应关系; 掌握使用指针处理字符串的方法; 掌握指针作为函数参数的应用。 重难点说明:指针的概念,指针作为函数的参数。 4 9 第 9 章结构体类型 1.结构体类型和结构体变量的 定义 2.结构体成员的引用 3.结构体数组 4.结构体指针 5.链表 掌握结构体类型的定义及结构体变量的引用方法; 掌握结构体数组的定义和使用; 理解结构体指针的定义及使用; 理解单向链表的创建和遍历; 理解 typedef 定义类型的方法。 重难点说明:结构体成员的引用,链表。 4 实验(上机)部分 序 号 实验项目名称 学 时 实验内容、要求及时间安排、仪器要求 必开/ 选开 实验 类型 1 顺序和选择结构 程序设计 2 熟悉 C 语言的上机环境及简单的程序调试方法;掌 握常见的格式化输入输出方法;掌握基本运算符和表 达式的使用;掌握 if-else 语句;学会顺序结构和选择 结构程序设计的基本方法。 时间安排:第 4 章 3. 选择结构程序设计举例 授课后; 仪器要求:PC 机、VC++6.0 或 DEV C++软件 必开 设计 2 循环结构程序设 计 4 掌握 while、do- while 和 for 语句以及循环的嵌套。 时间安排:第 5 章 3. 循环结构程序设计举例 授课后; 仪器要求:PC 机、VC++6.0 或 DEV C++软件 必开 设计 3 模块化程序设计 2 掌握函数的定义和使用。 时间安排:第 6 章 4. 变量的作用域 授课后; 仪器要求:PC 机、VC++6.0 或 DEV C++软件 必开 设计 4 数组应用 4 掌握一维数组、字符数组的使用;掌握二维数组的使用。 时间安排:第一次上机在第 7 章 1. 一维数组 授课 之后;第二次上机在第 7 章 3. 字符数组 授课之后。 仪器要求:PC 机、VC++6.0 或 DEV C++软件 必开 设计 5 指针 2 掌握指针的定义和使用,掌握指针作函数参数的应用。 时间安排:第 8 章 5. 返回指针的函数 授课后; 仪器要求:PC 机、VC++6.0 或 DEV C++软件 必开 设计