第1讲 C#程序设计简介

第1讲测验 C#程序设计简介

1、以下哪个属于控件
    A、按钮
    B、标签
    C、下拉框
    D、图片框
    E、Timer
    F、单选按钮
    G、复选框
    H、整数
    I、实数

2、编写事件,可以在属性窗口中找到“闪电”图标

3、按惯例,C#中的属性、方法、事件的首字母都大写

4、编写事件,可以在属性窗口中找到“闪电”图标

5、using名字空间的好处是后面可以简写

6、一般说来,属性都是名词或形容词

7、方法一般都用动词

8、程序的入口是main方法,这里的main要小写。

9、解析整数,可以用int的什么方法

10、使用哪个函数可以修改颜色?

11、计时器控件的时间间隔是用哪个属性表示的

12、随机数是用什么对象表示的

13、切换到代码窗口按快捷键

14、解析实数,可以用double的什么方法

15、可以用哪个类表示数学相关的函数

16、求平方根,可以用哪个函数

第1讲作业 简单的程序

1、编写一个简单的C#程序。要求使用WindowsForm及控件,使用对象的属性、方法及事件。 提交作业时,请将项目下的所有文件压缩成rar或zip文件并提交(要求含项目及源程序等,但最好要去掉bin及obj文件夹)。 评分标准: 程序能编译运行(3分); 使用窗体及控件(3分); 使用属性、方法及事件(3分); 总体效果较好,或者有一定创意(1分)。

第2讲 C#语言基础

2.1 数据类型、变量与常量 —— 语言中的单词随堂测验

1、+(加号)可以表示
    A、算术的加法
    B、正号
    C、字符串的连接
    D、事件的注册(+=)

2、int是引用类型

3、string是引用类型

4、double在内存中占8个字节

5、int占2个字节

6、Person p1 = new Person(18); //Person是引用类型 Person p2 = p1; 如果 p1.age=35; 则 p2.age也是35

7、Point p1 = new Point(18,20); //Point是struct Point p2 = p1; 如果置 p1.x=35; 则 p2.x也是35

8、1E7 是不合法的,因为它不是标识符

9、byte是无符号字节

10、uint是无符号整数

11、string等价于System.String

12、++运算符最好写到复杂的表达式中,而不要单独写

2.2 运算符与表达式 —— 语言中的标点符号随堂测验

1、非零即真

2、a>b>c是合法的

3、优先级是这样的:算术>关系>逻辑>三目>赋值;位运算比较乱

4、||表示条件或

5、&是表示字符连接运算

6、是表示乘方运算

7、写表达式时,适当加上圆括号,则其可读性会更好

8、&&是条件与,也叫短路与

9、++运算符最好写到复杂的表达式中,而不要单独写

第2讲测验 C#语言基础

1、int是值类型

2、int是引用类型

3、string是引用类型

4、double在内存中占8个字节

5、int占2个字节

6、Person p1 = new Person(18); //Person是引用类型 Person p2 = p1; 如果 p1.age=35; 则 p2.age也是35

7、1E7 是不合法的,因为它不是标识符。

8、byte是无符号字节

9、uint是无符号整数

10、string等价于System.String

11、++运算符最好写到复杂的表达式中,而不要单独写

12、&&是条件与,也叫短路与

13、写表达式时,适当加上圆括号,则其可读性会更好

14、是表示乘方运算

15、&是表示字符连接运算

16、||表示条件或

17、a>b>c是不合法的

18、优先级是这样的:算术>关系>逻辑>三目>赋值;位运算比较乱

19、非零即真

20、数组要先分配空间然后才使用

21、在声明数组时,可以直接指明大小

22、数组的下标从1开始

23、所有的数组都有一个属性Length

24、二维数组的写法是[,]

25、交错数组实际上是数组的数组

26、int[][] a = new int[][3]; 是合法的

27、数组在new时,其元素会默认初始化

28、二维数组的第二维的大小可以使用GetLength(1)来得到

29、先写注释后写代码是一个好习惯

30、控件命名使用匈牙利命名法是一个好习惯

31、程序中要尽量少写函数

32、循环一般都有五要素

33、if语句子可以没有else子句

34、switch语句中,一般情况下每个case都有break

35、switch语句中,case后面可以是变量

36、switch语句的变量可以是string类型的

37、do循环至少执行一次

38、循环中的continue表示执行下一次循环

39、循环中的break表示中断循环

40、屏保程序的扩展名叫.scr

第2讲作业 自动出题并判分的改进

1、作业题1 编写一个Windows程序,实现自动出题并判分的功能。 功能要求 能使用Random类随机出加减法的题目(2分) 能使用if/switch进行答案的判断(2分) 能使用事件处理,当用户答案填正确时,界面上有反馈(如文本框背景颜色的改变)(2分) 能使用Timer控件,自动发出事件,如自动出题(2分) 其他扩充功能(选做),如难题的判断,得分的计算等等(2分)。 界面可以参考(仅供参考,可以自由发挥)

第3讲 面向对象的C#语言

3.1 类、字段、方法 —— 面向对象那点事儿随堂测验

1、字段与方法都要放到类中,不能独立于类之外。

2、this指当前对象,后面用->符号来访问其成员。

3、构造方法返回类型是void

4、字段相当于变量,方法相当于函数。

3.3 类的继承 —— 富二代值得羡慕吗随堂测验

1、C#中,用哪个符号来表示继承

2、访问父类的成员,使用关键词

3、C#所有的类都是___________的子类

4、要重写父类的方法,使用关键词

5、判断一个对象是不是某个类的实例,使用运算符

6、类似于强制类型转换但不抛出异常的运符符是

3.4 修饰符 —— 形容词有大作用随堂测验

1、protected是与继承相关的

2、C#变量不能将全局变量写在类之外,但可以用static变量表示全局变量。

3、const只能用于基本类型及string

4、sealed表示不能被继承

5、abstract表示抽象的,不能被实例化,也就是说不能有构造方法

6、static方法中可以用this来访问其成员

7、static变量,即可以用类名来访问,又可以用对象实例来访问

8、internal大体相当于C++的friendly,但是它是基于程序集的

9、readonly就是const

10、abstract类一般都是用来被继承的

第3讲测验 面向对象的C#语言

1、字段与方法都要放到类中,不能独立于类之外。

2、字段相当于变量,方法相当于函数。

3、this指当前对象,后面用->符号来访问其成员。

4、构造方法返回类型是void

5、C#中,用冒号来表示继承

6、访问父类的成员,使用关键词father

7、C#所有的类都是object的子类

8、所有的对象都有ToString()方法

9、object等价于System.Object

10、要重写父类的方法,使用关键词override。

11、as类似于强制类型转换但不抛出异常

12、判断一个对象是不是某个类的实例,使用运算符is

13、如果要一个Person对象,来一个Student对象是完全可以的。

14、internal是基于程序集的访问控制

15、protected是与继承相关的

16、static变量,即可以用类名来访问,又可以用对象实例来访问

17、static本质上与this是对立的

18、static方法中可以用this来访问其成员

19、C#变量不能将全局变量写在类之外,但可以用static变量表示全局变量。

20、readonly就是const

21、const只能用于基本类型及string

22、sealed表示不能被继承

23、abstract表示抽象的,不能被实例化

24、abstract表示抽象的,不能被实例化,也就是说不能有构造方法

25、abstract类一般都是用来被继承的

26、interface表示接口

27、interface中的方法自动就是public的,而且是abstract的

28、interface一般用于表示某种特征

29、一个类只能实现一个接口

30、interface的名字习惯用字母I开始

31、实现interface的方法前一定要用public修饰

32、enum本质是上符号化的整数

33、enum量可以用于switch语句

34、面向对象的程序的主体是定义各种类

第3讲作业 ATM示例程序的改进

1、在3.1中的银行ATM示例的基础上,利用本讲所学的面向对象的思想及语法,进行改进。要求如下: 1. 使用面向对象的思想,模拟现实世界中的银行、账号、ATM等对象,其中类中有字段、方法; 2. 在程序中适当的地方,使用属性、索引,注意使用修饰符; 3. 使用继承,继承账号(Account类)得到一个子类(如信用账号),增加字段(如信用额度)、属性、方法,覆盖(overrid)一些方法(如WithdrawMoney)。 4. 根据程序的需要(可选做),使用C#的其他语法成分,诸如:接口、结构、枚举等。 程序中加上适当的注释,并加一个说明文件,简要描述在什么地方使用了一些特殊的语法要素。 评分标准: 银行、账号、ATM等类,其中类中有字段、方法(3分); 使用属性或索引,注意使用修饰符(2分); 使用继承(3分); 使用其他语法要素(2分)。

第7讲 Windows窗体与控件

7.2 常用控件随堂测验

1、控件Control类都是System.Windows.Forms.Control的子类

2、Control实现了IDisposable等接口

3、组件也是显示在界面上的控件

4、KeyPress事件实际上包括了KeyDown及KeyUp

5、文本框的PasswordChar可以使之成为密码框

6、多行文本框要设置MultiLine属性

7、向列表框中添加项目可以使用Items.Add()方法

8、日期时间框的Value属性可以用来表示用户选取的时期时间

9、进度条 ProgressBar的Maximum表示最小值

10、RichTextBox 富文本框的.Select(start,len)方法表示选中其中一部分

11、富文本框的SelectionColor属性可以用来设定一部分内容的颜色

12、面板及选项卡是常用的容器

第12讲 访问数据库

第12讲测验 访问数据库

1、数据库系统的优点包括
    A、共享性
    B、独立性
    C、完整性
    D、冗余数据多

2、数据库管理系统的功能包括
    A、数据定义
    B、数据操纵
    C、完整性控制
    D、安全控制
    E、并发控制

3、常用的数据库管理系统包括
    A、Oracle
    B、Sql Server
    C、MySql
    D、Access

4、数据库管理系统简称DBMS

5、关系型数据库以二维表格的形式来组织数据

6、DataTable对应于数据库中的表

7、DataRow对应于数据库中的行(记录)

8、DataColumn对应于数据库中的行

9、主键(primary key)是数据表中的某一行

10、数据表只能表示实体,不能表示实体之间的关系

11、实体关系图也叫E-R图

12、SQL语言是数据库的标准操作语言

13、SQL语言在所有的数据库中都是完全一样的

14、最常用的语句包括增删改查的语句

15、SELECT avg( salary ) FROM employee 表示查出最大值

16、SELECT语句中用while表示查询条件

17、SELECT count(*) FROM employee 表示查出记录条数

18、增加记录用insert语句

19、更改记录用update语句

20、删除记录用delete语句

21、创建表用add table语句

22、针对不同的数据库要使用不同的Provider

23、DataSet可以含有多个DataTable

24、访问数据的两种基本方式包括DataAdapter及DataReader

25、数据库连接串用来表示要连接的数据库及相关信息

26、Connection表示连接

27、Command表示命令

28、编写数据库应用时,可以建立自己的实用程序类,这样方便数据库的访问。

29、编写数据库应用时,最好将界面层、业务层、数居访问层分开。

30、使用DataGridView可以方便地显示DataTable数据

第12讲作业 使用数据库的背单词程序

1、做一个“背单词”程序,要求使用数据库技术。其中具体的单词可以参考第6讲,要求放入到数据库中。数据库可以采用小型的数据库(如Access, Sqlite等),也可以采用一般的数据库(如sql server)。要求有窗体界面。如果能加入标记生词或记录已背次数、测验等功能会更好。 评分标准: 窗体应用(2分); 使用了数据库技术(3分); 有背单词的功能(3分); 整体功能较好(2分)。