c程序设计。
c程序设计》课程教学大纲。
一、课程基本信息。
课程名称:c语言程序设计。
课程类别:专业核心课(必修课)
适用专业:计算机科学与工程及相关专业课程简介:《c程序设计》是计算机专业最最基本的课程之一。
本课程旨在让学生掌握一门最常用的程序设计语言—c语言,掌握结构化程序设计的思想,掌握最基本通用算法以及它们的应用,以及软件开发的完整过程。
本课程含有上机36学时。每章结束后都有一些上机题,以加深对所学内容的理解以及养成动手的习惯。最后还有一个较大型的作业,把所学的内容串联起来,综合应用。
通过本课程的学习,希望学生能够扎实掌握程序设计的基本技能,养成良好的程序设计风格,具备自主开发一个简单项目的能力。
课程总学时:90学时(理论:54学时、实践:36学时)周学时:5学时。
教材名称:《第一行**——c语言(**讲解版)》,翁惠玉编著,人民邮电出版社,2024年。
参考书目:程序设计基础》吴文虎清华大学出版社。
programming in c stephen g. kochan人民邮电出版社the art and science of c eric s. roberts机械工业出版社。
知识结构:理论知识60%+实践能力40%成绩评估:
总成绩(100%)=平时成绩40%+期末成绩60%平时成绩(40%)=作业+实验;
期末成绩(60%)=考试方式(笔试)
二、课程教育目标(一)在知识方面。
教学目标:通过本课程的学习,学生应掌握如下知识:语言的语法;2.过程化程序设计;3.通用的算法设计思想;
第(1)页共(7)页。
c程序设计。
4.软件开发的完整过程。
二)在能力方面。
教学目标:通过本课程的学习,学生应该具备如下的能力:1.
基本的算法设计能力;2.利用某个编程环境编译、链接、和调试程序的能力;3.熟练应用c语言编写程序的能力;4.
运用软件工程思想开发简单软件的能力。
三)在素质方面。
教学目标:通过本课程的学习,学生能够培养1.计算思维能力;2.应用计算机分析问题和解决问题的能力。3.良好的结构化程序设计能力。
三、教学内容与要求。
第1章:程序设计概述(2学时)
一、教学内容:
1.计算机的组成2.什么是程序设计;3.程序设计的过程。
二、教学难点:无。
三、教学要求:
1.了解计算机的组成、软件和硬件;2.了解高级语言的基本功能;3.了解程序设计的过程。
第2章:初识c语言(2学时)
一、教学内容:
程序的基本结构环境介绍。
二、教学难点:无。
三、教学要求:
1.掌握c程序的基本组成。
第(2)页共(7)页。
c程序设计。
2.了解编译预处理命令include的作用及应用;3.了解程序风格的概念;4.掌握vs2010的安装;
5.掌握如何在vs2010中编译、链接、调试、及运行程序。
第3章:顺序程序设计(6学时)
一、教学内容:
1.常量与变量2.变量定义3.
数据类型4.数据的输入输出5.算术表达式6.
赋值表达式7.复合的赋值表达式。8.
自增、自减运算9.信息的内部表示。
二、教学难点:
1.变量的概念。
会让printf中的格式控制字符串3.把赋值作为一个表达式4.整数的内部表示5.实数的内部表示。
三、教学要求:
1.本章是c语言最基础的部分,需要理解并熟练应用;2.算术表达式与数学中表达式的区别;3.讲解清楚格式控制字符及应用;
4.理解赋值是一个运算,并能熟练应用赋值运算的结果值;5.了解各类数据在计算机内的表示。
第4章:分支程序设计(3学时)
一、教学内容:
1.关系表达式2.逻辑表达式语句4.条件表达式语句。
二、教学难点:
1.短路求值。
语句中的条件可以是任意表达式。
三、教学要求:
第(3)页共(7)页。
c程序设计。
1.理解什么是分支程序设计,如何实现分支程序设计;2.讲清楚关系表达式与数学中关系表达式的区别;3.掌握随机数生成器的使用;
4.熟练掌握if语句和switch语句的使用;
第5章:循环程序设计(4学时)
一、教学内容:
1.两类不同的循环语句。
语句和do……while语句。
二、教学难点:
1.循环的嵌套。
和continue语句的区别。
三、教学要求:
1.了解什么是循环;
2.理解3个循环语句的执行过程并熟练掌握他们的应用,3.如何解决循环的中途退出问题。
第6章:函数(6学时)
一、教学内容:
1.函数的定义2.函数的使用3.递归程序设计。
二、教学难点:
1.递归概念。
2.静态变量和外部变量。
三、教学要求:
1.熟练掌握函数的定义;2.熟练掌握函数的使用;3.了解参数传递过程;
4.掌握多源文件的程序的编译链接5.掌握带参数宏的定义及使用。
6.了解递归概念,并能编写简单的递归函数。
第7章:数组(4学时)
一、教学内容:
1.一维数组的定义及使用2.二维数组的定义及使用3.字符串的存储与处理。
第(4)页共(7)页。
4.排序和查找。
二、教学难点:
1.二维数组与一维数组的关系2.查找和排序算法。
三、教学要求:
1.熟练一维数组的定义及使用;2.熟练二维数组的定义及使用;3.了解数组在内存的影像;4.掌握字符串的存储与处理方法;5.熟练应用顺序查找和二分查找算法;
c程序设计。
6.熟练应用直接选择排序和冒泡排序的算法。
第8章:指针(6学时)
一、教学内容:
1.指针的概念;2.指针的应用3.
指针与数组4.指针传递与返回指针5.动态变量6.
指针与字符串7.指针数组与多级指针函数的参数9.动态二维数组10.
指向函数的指针。
二、教学难点:
1.指针与数组的关系2.指针传递函数的参数4.动态二维数组。
六、教学要求:
1.熟练掌握指针的基本操作;
2.理解指针与数组的关系,并能熟练应用指针访问数组3.理解什么时候需要指针传递。
4.了解动态变量的应用场合,熟练掌握动态变量的使用。5.了解什么时候需要main函数6.了解动态二维数组。
7.了解指向函数的指针的含义和基本应用;
第(5)页共(7)页。
c程序设计。
第9章:更多的数据类型(5学时)
一、教学内容:
1.枚举类型2.结构体3.链表;4.共用体。
二、教学难点:
1.链表的概念,以及链表的存储与操作的实现2.结构体类型定义与结构体变量定义的区别3.结构体与共用体的区别。
三、教学要求:
1.了解枚举类型及枚举类型的使用,2.掌握结构体类型的定义;3.掌握结构体变量的使用;4.理解链接存储的概念。5.熟练掌握链表的操作。
6.理解共用体概念及共用体使用方法。
第10章:位运算(2学时)
一、教学内容:
1.位运算2.位段。
二、教学难点:
1.整型数在内存的影像2.位段的存储。
三、教学要求:
1.掌握位操作的应用2.掌握位段的定义及使用。
第11章:文件(4学时)
一、教学内容:
1.文件的概念2.文件的使用过程文件的读写4.二进制文件的读写5.文件的顺序访问6.文件的随机访问。
二、教学难点:
文件和二进制文件的区别。
第(6)页共(7)页。
2.访问文件与访问内存的区别。
三、教学要求:
1.了解文件访问过程;
2.理解ascii文件和二进制文件的区别;3.熟练掌握文件访问的函数。
c程序设计。
第12章:软件开发过程(6学时)
一、教学内容:
1.结构化程序设计2.自顶向下分解3.模块划分4.创建自己的库。
5.软件开发过程与软件工程。
二、教学难点:
1.自顶向下分解2.模块划分。
三、教学要求:
1.了解结构化程序设计的思想3.掌握如何设计和实现自己的库4.了解软件开发过程。
5.用软件工程的思想指导简单软件的开发2.掌握自顶向下分解过程课模块划分过程。
第13章:通用算法设计(4学时)
一、教学内容:
1.什么是通用算法2.枚举法3.贪婪法4.分治法5.动态规划6.回溯法。
二、教学难点:
1.动态规划2.回溯法。
三、教学要求:
1.了解各类算法的应用场合。
2.熟练掌握枚举法、贪婪法和分治法3.编写简单的给予动态规划和回溯法的程序。
第(7)页共(7)页。
C 程序设计教学大纲
课程教学大纲。贵州大学科技学院。2007年8月。c 程序设计 课程教学大纲。课程中文名称 c 程序设计。课程英文名称 c language programming 课程类别 必修课。课程编号 课程归属单位 贵州大学科技学院。制订时间 2007年8月。一 课程的性质 任务。课程性质 c 程序设计 是电...
《C程序设计》教学大纲
一 说明。一 c程序设计 的课程性质 c程序设计 是高等院校计算机专业专业基础课,也是一门实践性很强的课程,既要掌握概念,又要动手编程,还要上机调试运行。对计算机类专业学生来说是一门必修的课程,同时,这门课程也是 安徽省非计算机专业学生计算机应用能力水平考试 二级考试的主要语种之一。二 教材及授课对...
C程序设计教学大纲
c 程序设计 课程教学大纲。课程名称 c 程序设计计划学时 80计划学分 5 课程类别 专业基础课程课程性质 必修考试课。适用专业 高职高专计算机类专业 网络技术xxxx 开设学期 20 20 学年第x学期制订人 xxx 一 课程的性质 任务。c 程序设计是高职高专计算机类专业中的核心专业基础必修课...