《C#NET程序设计》教案.docx

上传人:b****5 文档编号:6744866 上传时间:2023-01-09 格式:DOCX 页数:54 大小:37.04KB
下载 相关 举报
《C#NET程序设计》教案.docx_第1页
第1页 / 共54页
《C#NET程序设计》教案.docx_第2页
第2页 / 共54页
《C#NET程序设计》教案.docx_第3页
第3页 / 共54页
《C#NET程序设计》教案.docx_第4页
第4页 / 共54页
《C#NET程序设计》教案.docx_第5页
第5页 / 共54页
点击查看更多>>
下载资源
资源描述

《C#NET程序设计》教案.docx

《《C#NET程序设计》教案.docx》由会员分享,可在线阅读,更多相关《《C#NET程序设计》教案.docx(54页珍藏版)》请在冰豆网上搜索。

《C#NET程序设计》教案.docx

《C#NET程序设计》教案

教案

2017~2018学年第1学期

院(系)

信息技术学院

教研室(研究所)

软件工程(软件外包方向)

课程名称

C#.NET程序设计

授课专业班级

软件工程(软件外包方向)2016级

主讲教师

王听忠

职称职务

副教授

使用教材

C#程序设计教程

二○一七年九月

第1次课的教学整体安排

授课时间

第1周第1-2节

课时安排

授课题目(教学章、节或主题):

.NET与C#概述;简单的C#程序设计

教学目的、要求(分掌握、理解、了解三个层次):

了解C#以及.NET的起源与发展,C#语言的特点。

了解C#安装的配置要求以及安装方法。

了解MicrosoftVisualStudio.NET运行环境。

观察学习运行几个C#程序。

教学内容(包括基本内容、重点、难点):

1.对本门课程的要求。

●Readthemaster!

Notthepupil!

为什么要Readthemaster?

(1)Master的作品是一块新鲜的口香糖,Pupil的是已经嚼过一遍的口香糖;

(2)准确性。

Master的理解更透,往往更准确;(3)品味。

Master的品味更高。

(4)易读性。

大师并非如我们所想的那么难以接近,相反,大师的作品有时更细致,写的更准确,文笔也更好,更有条理,我们理解的更顺利。

●要求记笔记,学期中进行检查。

为什么要记笔记?

在整个大学学习阶段,乃至于以后的学习工作中,我们要善于积累、收集。

好的方法、思路、算法、文章等都是收集的对象,收集得越多,“财富”就越多,如果大学期间没有收集到这些东东,那就入宝山而空回。

做笔记,是我们积累的一种方式,应该养成这样的习惯。

●多练习,多实践。

“纸上得来终觉浅,绝知此事要躬行”。

没有练习和实践,对很多知识点的理解都是肤浅甚至等于无。

注意我们课本有“习题”和“实验”。

●写Email的基本要求!

2.C#概述:

课本P1-P2。

3..NET平台概述。

课本P2-P7。

.NET框架组成图(课本P3)非常重要。

平台的几个重要的部件如下。

(1)公共语言运行库(CLR)。

(2)基本类库。

(3)ADO.NET。

(4)WindowsForms。

(5)WebForms/WebService。

4..NET程序的编译过程。

课本P5-P6。

5.开发环境VisualStudio.NET的安装和简介。

6.C#程序:

控制台程序,例2.1。

课本P25-P27。

学生自行输入。

简单介绍控制台应用程序构成。

课本P27-P29。

7.输入和输出。

P30。

8.C#程序:

Window程序,例2.2。

对话框HelloWorld。

学生自行输入。

简单介绍Windows程序构成。

课本P34-P35。

讨论、思考题、作业:

课后作业:

安装MicrosoftVisualStudio.NET,并写下安装过程中碰到的一些问题和解决方法。

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2005.4

BurtonHarvey等着,康博译,C#程序设计教程,清华大学出版社,2001.10

JohnSharp着,周靖译,VisualC#2005从入门到精通,清华大学出版社,2006.6

KarliWatson,MarcoBellinaso等着,康博译C#入门经典,清华大学出版社,2003.12

实施情况及分析

教学过程设计:

复习_____分钟,授新课_70__分钟,安排讨论__20_分钟,布置作业____分钟

授课类型(请打√):

理论课√讨论课□实验课□练习课□其他□

教学方式(请打√):

讲授√讨论□指导□其他□

教学资源(请打√):

多媒体√模型□实物□挂图□音像□其他□

填表说明:

1.每项页面大小可自行添减;

2.教学内容与讨论、思考题、作业部分可合二为一。

第2次课的教学整体安排

授课时间

第1周第3-4节

课时安排

授课题目(教学章、节或主题):

数据类型,常量和变量,表达式和练习。

教学目的、要求(分掌握、理解、了解三个层次):

掌握C#的数据类型。

理解C#的变量、常量。

掌握C#的运算符和表达式。

教学内容(包括基本内容、重点、难点):

1.标识符。

P37-P38。

只能含有数字,字母和下划线,并且不能以数字开头。

严格区分大小写。

不能与C#关键字同名。

C#关键字P38,每一个人应该保留一份!

2.数据类型:

首先,C#的数据类型实际上不单单是C#的数据类型值,它们首先是.NET的数据类型。

这里展示了微软.NET设计一统江湖的雄心。

3.数据类型的分类:

从存储的角度分:

值类型和引用类型。

从使用的角度分:

简单类型和复合类型。

●值类型:

示意图3-1。

简单类型:

整数类型,字符类型,布尔类型,实数类型。

注意每一个类型的名字,对应的.NET公用类型系统名,所占用内存空间,以及取值范围。

思考:

C#的类型跟C的类型有什么不同?

程序设计语言的整数类型跟数学里面的整数集合有什么不同?

实数类型跟实数集合呢?

关于类型的存储空间大小和精度:

用尺子来做比喻。

为什么decimal的位数更多,但是表示范围却小很多?

枚举类型:

仅要求了解。

结构类型:

仅要求知道。

●引用类型:

数组,字符串,类,接口…

4.变量和常量。

直接常量或字面常量:

直接写出值来的量。

注意

(1)整数和浮点数直接常量后缀的使用;

(2)字符常量的转移字符;(3)字符串常量的转义字符和逐字字符串。

符号常量:

用符号表示一个常量,其值定义以后不能再改变。

变量:

是一个程序运行过程中可以改变的值。

已命名的存储单元。

必须先声明后使用。

注意变量的有效范围是在定义它的模块里面。

而模块是通过“{”和“}”界定的。

5.类型转换:

隐式转换和显式转换。

课本P48-P49。

6.表达式。

操作数+运算符构成表达式,表达式构成语句。

程序就是这样搭建出来的!

所以,首先我们关心运算符!

7.堂上练习。

实验3-4。

课本P69。

讨论、思考题、作业:

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2005.4

BurtonHarvey等着,康博译,C#程序设计教程,清华大学出版社,2001.10

JohnSharp着,周靖译,VisualC#2005从入门到精通,清华大学出版社,2006.6

KarliWatson,MarcoBellinaso等着,康博译C#入门经典,清华大学出版社,2003.12

实施情况及分析

教学过程设计:

复习_____分钟,授新课_60__分钟,安排讨论__30_分钟,布置作业____分钟

授课类型(请打√):

理论课√讨论课□实验课□练习课□其他□

教学方式(请打√):

讲授√讨论□指导□其他□

教学资源(请打√):

多媒体√模型□实物□挂图□音像□其他□

填表说明:

1.每项页面大小可自行添减;

2.教学内容与讨论、思考题、作业部分可合二为一。

第3次课的教学整体安排

授课时间

第2周第1-2节

课时安排

授课题目(教学章、节或主题):

运算符和表达式;C#的控制语句。

教学目的、要求(分掌握、理解、了解三个层次):

1.掌握C#的各种运算符。

2.理解运算符优先级。

教学内容(包括基本内容、重点、难点):

1.运算符

●算术运算符。

跟普通的数学运算类似。

注意

(1)运算数的类型,尤其是“/”号和“%”号;

(2)递增和递减符号。

●字符串运算符。

●赋值运算符。

简单赋值就是等于号,把右边的表达式运算所得的值赋给左边。

复合赋值,把x=x+3写成x+=3。

●关系运算符。

其实是所谓的“序”关系。

即一个集合里面的元素有一个排序,两两之间可以比较。

对于数而言,就是大于,小于和等于,还有它们的组合,否定。

关系运算符作用于数值类型,结果是布尔类型。

●逻辑运算符。

对布尔类型进行运算,得布尔类型。

与、或、非操作。

注意“&”和“&&”的区别,所谓短路特征。

●位运算符。

例3.4。

应用例子:

(1)按位异或可用于加密;

(2)移位运算等于乘以或除以2的整次幂。

●条件运算符。

唯一一个三元运算符。

跟C语言的一样。

●其他运算符。

●运算符的优先级与结合顺序。

什么叫优先级?

参看表2-9。

我们从小所学的先乘除,再加减就是优先级的一个例子。

一个例子可以简单说明算术运算,关系运算和逻辑运算的优先级:

结合顺序。

比较古文和现代文的书写方向!

注意那些从右到左结合的运算符!

典型的例子就是

●表达式中的类型转换。

与前面所说的运算符要考虑运算数相结合。

2.常用类和结构。

●String类:

详细讲。

●Math类:

略讲。

●Convert类:

略讲。

●DateTime结构:

略讲。

3.堂上练习:

把例子2-1用if-elseif的形式重写一遍。

讨论、思考题、作业:

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2005.4

BurtonHarvey等着,康博译,C#程序设计教程,清华大学出版社,2001.10

JohnSharp着,周靖译,VisualC#2005从入门到精通,清华大学出版社,2006.6

KarliWatson,MarcoBellinaso等着,康博译C#入门经典,清华大学出版社,2003.12

实施情况及分析

教学过程设计:

复习_____分钟,授新课_60__分钟,安排讨论__30_分钟,布置作业____分钟

授课类型(请打√):

理论课√讨论课□实验课□练习课□其他□

教学方式(请打√):

讲授√讨论□指导□其他□

教学资源(请打√):

多媒体√模型□实物□挂图□音像□其他□

填表说明:

1.每项页面大小可自行添减;

2.教学内容与讨论、思考题、作业部分可合二为一。

第4次课的教学整体安排

授课时间

第2周第3-4节

课时安排

授课题目(教学章、节或主题):

C#的控制语句(2.6);数组。

教学目的、要求(分掌握、理解、了解三个层次):

掌握C#分支(选择,条件判断)语句。

掌握C#的循环语句while,do…while和for。

掌握C#的break和continue跳转语句。

理解数组的定义,存储。

教学内容(包括基本内容、重点、难点):

1.选择语句。

●If语句。

(1)if;

(2)if-else;(3)if-elseif;(4)嵌套的if,这里要讲一下就近原则和“{}”的使用,以例4.4的代码为例子。

●Switch语句。

注意

(1)break语句;

(2)default语句;(3)case后面的表达式。

2.循环控制语句。

●While语句,例4.6。

●Do-while语句,例4.7。

●For语句,例4.8。

3.跳转语句。

Break,continue和return语句。

●Break。

用于循环语句或者switch语句。

直接跳出本循环,到循环语句的下一条语句。

例如,找出一个愿意帮我忙的学生。

●Continue。

只能用于循环语句。

跳出本轮循环。

例如,找出所有愿意帮我忙的学生,并给每一个愿意帮忙的学生分配任务。

●Return。

用于结束一个方法。

观察例子2-10。

4.Goto语句。

不建议使用。

5.一维数组。

不需要在声明的时候指定大小。

用new运算符来创建数组实例。

(跟C语言对比)

数组的初始化。

注意四种不同的形式!

(1)全部写全;

(2)省略数组大小;(3)右边集合形式;(4)声明和初始化分开写。

访问:

数组名[下标]。

例2-14。

讨论、思考题、作业:

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2005.4

BurtonHarvey等着,康博译,C#程序设计教程,清华大学出版社,2001.10

JohnSharp着,周靖译,VisualC#2005从入门到精通,清华大学出版社,2006.6

KarliWatson,MarcoBellinaso等着,康博译C#入门经典,清华大学出版社,2003.12

实施情况及分析

教学过程设计:

复习_____分钟,授新课_60__分钟,安排讨论__30_分钟,布置作业____分钟

授课类型(请打√):

理论课√讨论课□实验课□练习课□其他□

教学方式(请打√):

讲授√讨论□指导□其他□

教学资源(请打√):

多媒体√模型□实物□挂图□音像□其他□

填表说明:

1.每项页面大小可自行添减;

2.教学内容与讨论、思考题、作业部分可合二为一。

第5次课的教学整体安排

授课时间

第3周第1-2节

课时安排

授课题目(教学章、节或主题):

数组:

一维数组,二维数组和交叉数组。

(5.1-5.3)

教学目的、要求(分掌握、理解、了解三个层次):

1.掌握一维数组的定义、初始化和访问。

2.掌握二维和多维数组数组的定义,二维数组的初始化和访问。

3.了解交叉数组的定义,初始化和访问。

4.理解Array类的概念。

5.了解Array类的Length属性和GetLength方法。

6.初步掌握前面所学知识的应用。

教学内容(包括基本内容、重点、难点):

1.一维数组

●定义(声明):

数据类型[]数组名;

●初始化:

课本P86。

注意多种初始化方式。

(1)动态初始化:

使用new关键字;

(2)静态初始化:

直接用等号。

●访问:

下标访问,注意越界问题。

●Foreach语句。

2.二维数组——矩阵

●声明与数组对象创建。

数据类型[,]数组名;

●初始化:

比较多种初始化方式:

(1)动态初始化;

(2)静态初始化。

●访问。

3.多维数组与交错数组

(1)多维数组声明:

type[,,,]数组名;

(2)交错数组则是:

(P91,注意多种初始化方法)

type[][][]数组名;

(3)多维数组的创建:

数组名=newtype[s1,s2,s3];

(4)不规则数组的创建:

数组名=newtype[3][];

数组名[0]=newtype[4];

数组名[1]=newtype[2];

数组名[2]=newtype[5];

●初始化。

多维数组同样有四种形式的初始化。

(1)全部写全;

(2)省略数组大小;(3)右边集合形式;(4)声明和初始化分开写。

不规则数组的初始化通常是分步进行的。

●引用。

跟声明的形式对应,引用的形式多维数组和不规则数组也有不同。

多维数组:

数组名[i1,i2,i3…]。

不规则数组:

数组名[i1][i2][i3]…

4.System.Array。

(略讲)

学生自己调试例5.3。

以例5.3说明几个特点。

(1)随机数。

(2)排序方法。

讨论、思考题、作业:

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2005.4

BurtonHarvey等着,康博译,C#程序设计教程,清华大学出版社,2001.10

JohnSharp着,周靖译,VisualC#2005从入门到精通,清华大学出版社,2006.6

KarliWatson,MarcoBellinaso等着,康博译C#入门经典,清华大学出版社,2003.12

实施情况及分析

教学过程设计:

复习_____分钟,授新课_60__分钟,安排讨论__30_分钟,布置作业____分钟

授课类型(请打√):

理论课√讨论课□实验课□练习课□其他□

教学方式(请打√):

讲授√讨论□指导□其他□

教学资源(请打√):

多媒体√模型□实物□挂图□音像□其他□

填表说明:

1.每项页面大小可自行添减;

2.教学内容与讨论、思考题、作业部分可合二为一。

第6次课的教学整体安排

授课时间

第3周第3-4节

课时安排

授课题目(教学章、节或主题):

C#基础练习,程序的编译与调试。

(12.1-12.2)

教学目的、要求(分掌握、理解、了解三个层次):

1.理解面向对象程序设计的思想。

2.理解对象的概念。

3.理解类的概念。

4.理解字段和属性。

教学内容(包括基本内容、重点、难点):

1.错误分类(P294)。

(1)语法错误;

(2)执行错误——通常导致“异常”;(3)逻辑错误。

2.程序调试(P298)。

●开始调试

●断点

●定位错误

●调试过程

●单步跟踪

3.练习。

讨论、思考题、作业:

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2005.4

BurtonHarvey等着,康博译,C#程序设计教程,清华大学出版社,2001.10

JohnSharp着,周靖译,VisualC#2005从入门到精通,清华大学出版社,2006.6

KarliWatson,MarcoBellinaso等着,康博译C#入门经典,清华大学出版社,2003.12

实施情况及分析

教学过程设计:

复习_____分钟,授新课_60__分钟,安排讨论__30_分钟,布置作业____分钟

授课类型(请打√):

理论课√讨论课□实验课□练习课□其他□

教学方式(请打√):

讲授√讨论□指导□其他□

教学资源(请打√):

多媒体√模型□实物□挂图□音像□其他□

填表说明:

1.每项页面大小可自行添减;

2.教学内容与讨论、思考题、作业部分可合二为一。

第7次课的教学整体安排

授课时间

第4周第1-2节

课时安排

授课题目(教学章、节或主题):

面向对象程序设计基础:

基本概念,类。

(6.1-6.2)

教学目的、要求(分掌握、理解、了解三个层次):

1.理解面向对象程序设计的思想。

2.理解对象的概念。

3.理解类的概念。

4.理解字段和属性。

教学内容(包括基本内容、重点、难点):

1.本节课先讲思想以及以实际程序为例子说明问题。

但是关于编程的细节和具体的语法在下一节课作详细说明。

以3.5节的综合应用例子为贯穿几节课的例子。

2.面向对象的思想。

面向对象首先是一种思想。

对象,是现实世界的事物,或者是它们的抽象。

例子

(1)汽车的例子;

(2)iPhonev.s.Samsung;(3)学生成绩管理程序。

面向对象程序设计是一种基于结构分析的、以数据为中心的程序设计方法。

其总体思路是:

将数据以及处理这些数据的操作封装到一个称为类的数据结构中;在程序中使用的是类的实例,即对象。

3.过程性思想v.s.面向对象思想。

在程序设计中,为了共享,把某些常用功能设计成一个模块,比如说,一个函数,一个.h文件,一个dll文件。

在面向对象程序设计中,把这种思路贯彻到底,整个程序就由一个个称为类的功能模块构成。

4.对象的概念。

万物皆对象!

程序设计的对象,必然是现实世界的对象的抽象。

比如说一个学生,我们编写学生成绩管理程序的时候,只关心学生的姓名,性别,年龄…等。

如果我们要抽调这个学生进学校田径队,那么我们关心他的百米跑速度,摸高等等。

不同的应用,关心的属性不同。

对象由状态和操作来描述。

还是以

(1)汽车为例子。

汽车状态由各种属性来描述:

熄火状态,点火状态;车灯开,车灯关;倒车档,前进挡,停泊挡;目前的时速。

汽车的操作有:

踩油门,刹车,开灯,关灯。

操作会改变状态。

(2)学生成绩管理程序。

学生对象的状态和操作。

5.类的概念。

类,是对象的模板。

对象是生产出来的产品。

例如,汽车厂的设计图和具体生产出来的汽车。

又例如,学生成绩管理程序中,学生和课程类分别定义学生和课程,运用这些类我们可以具体定义学生对象和课程对象。

以学生成绩管理程序为例。

6.类的声明。

P104

访问修饰符:

表6.1。

注意此处有误!

类的修饰符不能够是protected和private。

缺省的类修饰符为internal。

7.类的成员。

字段:

字段是用来描述对象状态的。

属性。

方法:

方法是类的动作和功能。

成员的修饰符:

表6.3。

8.对象。

对象是基于类的具体实体。

也称为类的实例。

对象的声明和初始化。

P106。

访问对象的字段和方法。

P107。

例6.1,学生自行输入。

讨论、思考题、作业:

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2005.4

BurtonHarvey等着,康博译,C#程序设计教程,清华大学出版社,2001.10

JohnSharp着,周靖译,VisualC#2005从入门到精通,清华大学出版社,2006.6

KarliWatson,MarcoBellinaso等着,康博译C#入门经典,清华大学出版社,2003.12

实施情况及分析

教学过程设计:

复习_____分钟,授新课_60__分钟,安排讨论__30_分钟,布置作业____分钟

授课类型(请打√):

理论课√讨论课□实验课□练习课□其他□

教学方式(请打√):

讲授√讨论□指导□其他□

教学资源(请打√):

多媒体√模型□实物□挂图□音像□其他□

填表说明:

1.每项页面大小可自行添减;

2.教学内容与讨论、思考题、作业部分可合二为一。

第8次课的教学整体安排

授课时间

第4周第3-4节

课时安排

授课题目(教学章、节或主题):

面向对象程序设计基础:

基本概念。

(6.3-6.4)

教学目的、要求(分掌握、理解、了解三个层次):

1.掌握构造函数和析构函数。

教学内容(包括基本内容、重点、难点):

1.构造函数:

类相当于设计图纸,对象相当于产品,构造函数相当于生产过程,析构函数呢?

垃圾回收工作?

可以这样比喻。

P109。

声明和调用的格式,修饰符,命名规则。

例6.2讲解。

注意构造函数同名的现象,这是所谓的重载(overload)。

2.析构函数。

P111。

示例6.3。

3.第6章练习。

讨论、思考题、作业:

参考资料(含参考书、文献等):

李春葆等,C#程序设计教程,清华大学出版社,2009

万科,覃剑,VisualC#.NET程序设计基础与上机指导,清华大学出版社,2007

邵鹏鸣,VisualC#程序设计基础教程,清华大学出版社,2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1