综合练习
一、选择题
1. Visual C# 2008工具箱的作用是( )。
A. 编写程序代码
B. 显示指定对象的属性
C. 显示和管理所有文件和项目设置,以及对应用程序所需的外部库的引用 D. 提供了常用的数据控件、组件、Windows窗体控件等
2. 若想修改窗体标题栏中的名称,应当设置窗体的( )属性。
A. Text B. Name C. Enabled D. Visible 3. Windows窗体设计器的作用是( )。
A. 编写程序代码 B. 设计用户界面 C. 提供Windows窗体控件 D. 显示指定对象的属性 4. 解决方案资源管理器窗口的功能是( )。
A. 编写程序代码
B. 显示指定对象的属性
C. 提供了常用的数据控件、组件、Windows窗体控件等
D. 显示一个应用程序中所有的属性以及组成该应用程序的所有文件 5. 在Visual Studio 2008中,定制环境一般可以通过( )来实现。
A. 工具箱 B. 代码编辑器 C. 解决方案资源管理器 D. 【选项】对话框 6. 下面是Visual C# 2008的合法标识符的是( )。
A. abc?d B. 12 C. 8程序 D. if_else 7. 表达式2 * 3 % 2 + 2 * 8 / 4 + 3 * 2 的值为( )。
A. 8 B. 9 C. 10 D. 12 8. 字符常量是用( )括起来的一个16位的Unicode字符。
A. 单引号 B. 双引号 C. 小括号 D. 花括号 9. 表达式4 + 5 / 6 * 7 / 8 % 9的值是( )。
A. 4 B. 5 C. 6 D. 7 10. Visual C# 2008的字符串连接运算符是( )。
A. & B. + C. && D. %
11. 在switch语句中,使用( )语句来表示每个case子句的结尾。
A. 花括号({}) B. continue语句 C. 分号(;) D. break语句 12. 下面是for语句的一般形式:
for ([<表达式1>]; [<表达式2>]; [<表达式3>])
{
<循环体> }
其中可以省略的表达式是( )。
A. <表达式1> B. <表达式2> C. <表达式3> D. 都可以省略 13. 循环体至少执行一次的循环是( )。
A. do循环 B. while循环 C. do...while循环 D. 以上都不是
14. 用于终止最近的封闭循环(包括for语句、while语句、do...while语句、foreach语句)或它所在的switch语句的语句是( )。
A. goto语句 B. break语句 C. continue语句 D. return语句
15. 用于将控制权传递给它所在的循环语句(包括for语句、while语句、do...while语句、foreach语句)的下一次循环的语句是( )。
A. goto语句 B. break语句 C. continue语句 D. return语句
16. 声明方法时,如果有参数,则必须写在方法名后面的小括号内,并且必须指明它的类型和名称,若有多个参数,需要用( )隔开。
A. 逗号 B. 分号 C. 冒号 D. 不能定义多个参数 17. 在Visual C# 2008中定义一个类要用到的关键字是( )。
A. public B. class C. classification D. private 18. 访问仅限于本类或从本类派生的类修饰符是( )。
A. protected B. internal C. protected internal D. private 19. 定义静态字段需要使用( )关键字。
A. public B. readonly C. static D. protected
20. 有一个5×8的矩阵,其中的元素均为100~999之间的整数,若使用最合理的二维数组(int类型)来处理它,则实例化数组时,系统给其分配的内存空间应该为( )字节。
A. 40 B. 80 C. 160 D. 320 21. 声明一维数组后,可以使用( )关键字对其实例化。
A. class B. new C. public D. static 22. 数组的Length属性用于( )。
A. 返回数组所有维数中元素的总数 B. 返回数组的维数 C. 用于反转一维数组
D. 用于返回数组指定维度的下限与上限
23. .NET Framework提供了一个专门产生随机数的类为( )。
A. System.Random B. Random C. Rnd() D. Next()
24. 提供用于创建、复制、删除、移动和打开文件的实例方法,并可协助创建FileStream对象的类是( )。
A. File B. FileInfo C. Directory D. DirectoryInfo 25. 提供用于创建、移动和检索文件夹与子文件夹的静态方法的类是( )。
A. File B. FileInfo C. Directory D. DirectoryInfo 26. 用于移动文件夹的方法是( )。
A. CreateDirectory B. Copy C. Delete D. Move 27. GetCurrentDirectory方法用于( )。
A. 获取当前计算机所有逻辑驱动器的名称 B. 获取当前应用程序的路径 C. 删除文件夹 D. 创建新文件夹
28. LastAccessTime属性用于( )。
A. 获取文件夹的创建时间 B. 获取文件夹的最近访问事件 C. 当前文件夹的父文件夹 D. 获取当前文件夹中的所有子文件夹 29. 二进制文件读写常用类是( )。
A. StreamReader B. StreamWriter C. Directory D. FileStream 30. 用于创建应用程序与数据库连接的类是( )。
A. Connection B. Command C. DataAdapter D. DataReader
31. ( )对象一次一笔向下顺序地读取数据源中的数据,而且这些数据是只读的,不允许进行其他的操作。
A. Connection B. Command C. DataAdapter D. DataReader
32. SqlDataAdapter对象的( )属性,用于获取或设置一个 Transact-SQL 语句或存储过程,以在数据源中插入新记录。
A. SelectCommand B. InsertCommand C. DeleteCommand D. UpdateCommand
33. 设置DataGridView控件的( )属性,可以将数据集中的数据绑定到DataGridView控件中。
A. Rows B. Cells C. Tables D. DataSource 34. 使用SQLConnection类,需要引入的命名空间为( )。
A. System.Data B. System.Data.SqlClient C. System.Data.OleDb D. System.Data.OracleClient
35. 在数据库连接字符串“server=ABC;database=DBSelectCourse;integrated security=SSPI”中,“ABC”表示( )。
A. 数据库服务器名 B. 数据库名 C. 连接方式 D. 身份验证模式
36. 在数据库连接字符串“server= ABC;database= DBSelectCourse;uid=sa;pwd=sa”中,“uid=sa”表示( )。
A. 数据库服务器名为sa B. 数据库名为sa C. 登录数据库的用户名为sa D. 要访问的数据表名为sa
37. 如果数据集myDataSet中至少包含一个非空表,则可以使用( )表达式来访问第一个表中的第“i”行第“j”列的数据。
A. myDataSet.Tables[0].Rows[i].ItemArray[j] B. myDataSet.Tables[0].GetValue(i, j) C. myDataSet.Tables[0].GetValue[i, j]
D. myDataSet.Tables[0].Rows[i].Cells[j].Value
38. 在本书介绍的学生选课系统数据库“DBSelectCourse”中,用于存放个人信息的数据表是( )。
A. tbl_User B. tbl_Information C. tbl_Student D. tbl_SelectCourse
39. 在本书介绍的学生选课系统数据库“DBSelectCourse”的中“tbl_User”,“firstLogin”字段用于存放用户的( )信息。
A. 用户名 B. 用户密码 C. 用户权限 D. 是否首次登录 40. 更改窗体左上角的图标,需要修改窗体的( )属性。
A. Text B. ICON C. Image D. Picture 41. 图标文件的扩展名为( )。
A. bmp B. jpg C. gif D. ico
42. 运行一个Windows应用程序时,若想不可以使用鼠标拖拽来改变窗体的大小,可以通过设置窗体的( )属性来实现。
A. AutoSizeMode B. GrowAndShrink C. StartPosition D. MaximizeBox
二、填空题
1. 新建一个Windows应用程序后,出现的默认窗体名称为 。
2. Visual C# 2008给用户提供了很多控件,常用的被放置在“工具箱”中,不常用的可以通过快捷菜单中的 菜单项来添加控件。
3. 在自定义窗口布局后,希望能恢复到Visual C# 2008开发环境的默认窗口布局,这可以通过选择 菜单项来实现。
4. 在Visual C# 2008中,反斜杠字符的表示方式为 。
5. 类型转换按照不同的转换方式可以分为 和 两种。 6. 在Visual C# 2008中,求余运算符为 。
7. 已知变量a、b的值为2和4,则表达式“--a + b + --b / a++”和“--a + b-- / a”的值分别为 和 。
8. 结构化程序设计的三种控制结构是 、 和 。
9. Visual C# 2008中,实现选择结构的语句有 和 。
10. C# 的循环结构控制语句有 、 、 。 11. 下面语句段的循环执行次数为 次。
//************************************************************************************* int i;
int sum = 0;
for (i = 0; i < 10; i +=2) {
sum += i; }
//*************************************************************************************
12. 下面的程序段执行后,变量sum的值为 、i的值为 。
//************************************************************************************* int i;
int sum = 1;
for (i = 1; i < 10; i +=3) {
sum *= i; }
//*************************************************************************************
13. 在函数过程中返回值的关键字是 。
14. 若要清除数组中所有元素的值,应当使用 方法。 15. 复制数组可以使用Syatem.Array类提供的 、 和 方法。 16. 在Visual C# 2008中,与文件操作有关的类位于 命名空间中。 17. File类的Create方法用于 。
18. FileInfo类的Extension属性用于 。
19. 在Visual C# 2008中,可以使用 类和 类来读写文本文件,它们是专门针对文本文件设计的。
20. DataSet由 对象和 对象组成。
21. 打开和关闭数据库连接的方法分别为: 和 。 22. 是DataSet和SQL Server之间的桥接器,用于检索和保存数据。 23. 使用DataSet类,需要引入的命名空间为 。
24. 限定数据表字段的取值范围,由创建该字段的约束 实现。
25. 为了限定某一数据表中的某个字段值必须存在于另一数据表中的同一字段中,可以创建一个 来实现。
26. 文本框的PasswordChar属性用于 。 27. 对于“FrmLogin”窗体,语句“this.Cursor = System.Windows.Forms.Cursors.WaitCursor;”的作用是 。
28. if(e.KeyCode == Keys.Enter)的含义是 。
三、问答题
1. 简述Visual C# 2008的合法标识符规则。 2. Visual C# 2008的逻辑运算符有哪些?
3. 运算符“=”和运算符“==”的含义各是什么,两者是否等价?
4. 在StreamWriter类的构造函数中,有一个名为“append”的参数,简述其作用。 5. 什么是ADO.NET?简述ADO.NET对象模型的组成。
6. .NET框架包括哪些数据提供程序,如何选择.NET数据提供程序? 7. 简述本书介绍的学生选课系统包含哪些功能模块。 8. 在设计数据表时,如何设定字段的取值范围和默认值。
9. 创建一个新的Windows应用程序后,如何更改默认窗体类“Form1”的名称?
10. 在本书介绍的“CPublic”和“CDataBase”类中,为什么要将其中的变量和方法定义为静态(static)的?
四、编程题
1. 使用Visual C# 2008设计一个Windows应用程序,使用控件(即标签控件)输出“我的第一个Visual C# 2008 Windows应用程序!”。程序界面如下图所示。
2. 上机练习,计算并输出下列表达式的值:
(1)\ (2)! (2 * 5 == 11) (3)(2 <= 2) && (8 > 4 + 2) (4)! (8<10) || (9 > 6) && (4<8) || (2 == 4) (5)3 ^ 8 (6)5 << 2
3. 设计应用程序,输入一个年号,判断并输出其是否为闰年。
4. 编程实现:设有一张厚度为1毫米,面积足够大的纸,将其不断对折。问对折多少次后,厚度可以达到珠穆朗玛峰的高度(8848米)。
5. “水仙花数”是指一个三位数,并且具有以下特征:其百、十、个位上的数的立方和恰好等于该数。例如153是一个水仙花数:
153 = 13 + 53 +33
编写程序,输出所有水仙花数。 6. 编写求三个整数中的最大数的方法。 7. 编写求任意数立方的方法。
8. 定义一个求圆柱体体积的类CylinderVol。编写程序,输入圆柱体的底面半径和高,使用CylinderVol类求该圆柱体的体积。
9. 编写程序,随机生成10个两位整数,使用数组处理,求解并输出其中的最大者、最小者以及平均值。
10. 根据本书的介绍,完成学生选课系统数据库的设计与实现。