C#程序设计(第2版)
作者:刘君瑞,姜学锋
出版社:清华大学出版社
出版时间:2023-02-01
ISBN:9787302626176
定价:¥46.00
第1章程序设计基础1
1.1计算机系统和工作原理1
1.1.1计算机系统的组成1
1.1.2指令、程序与软件3
1.2信息的表示与存储5
1.2.1计算机的数字系统5
1.2.2进位记数制的转换6
1.2.3数值数据的表示8
1.2.4非数值数据的表示10
1.3程序设计语言11
1.3.1机器语言与汇编语言11
1.3.2高级语言12
1.4程序设计概述13
1.4.1计算机问题求解的基本特点13
1.4.2算法的定义与特性13
1.4.3算法的表示14
1.4.4程序设计技术16
1.5C#语言概述18
1.5.1C#语言的历史与特点18
1.5.2C#语言基本词法19
1.5.3简单的C#程序20
1.5.4C#程序基本结构25
1.5.5C#程序开发步骤26
习题27
第2章将简单数据与计算引入C#28
2.1数据类型28
2.1.1整型29
2.1.2实数型30
2.1.3字符和字符串31
2.1.4布尔型32
2.2常量32
2.2.1整数字面常量32
2.2.2实数字面常量33
2.2.3字符字面常量33
2.2.4字符串字面常量34
2.2.5符号常量35
2.3变量35
2.3.1变量的概念35
2.3.2定义变量36
2.3.3使用变量36
2.3.4可空类型37
2.4运算符与表达式38
2.4.1运算符与表达式的概念38
2.4.2数值数据的运算与处理39
2.4.3文本数据的运算与处理42
2.4.4逻辑数据的运算与处理42
2.4.5其他运算符45
2.4.6常量表达式46
2.5赋值和类型转换46
2.5.1赋值运算符46
2.5.2类型转换47
习题50
第3章程序控制结构52
3.1语句52
3.1.1简单语句52
3.1.2复合语句53
3.1.3注释54
3.1.4语句的写法54
3.2输入和输出55
3.2.1输入方法55
3.2.2输出方法57
3.3程序顺序结构61
3.3.1顺序执行61
3.3.2跳转执行62
3.4程序选择结构62
3.4.1if语句62
3.4.2switch语句64
3.4.3选择结构的嵌套66
3.4.4选择结构程序举例66
3.5程序循环结构70
3.5.1while语句70
3.5.2do语句71
3.5.3for语句73
3.5.4break语句74
3.5.5continue语句74
3.5.6循环结构的嵌套75
3.5.7循环结构程序举例76
3.6异常处理78
3.6.1异常处理的概念78
3.6.2异常处理的实现79
3.7其他语句80
习题81
第4章模块化程序设计84
4.1方法定义84
4.1.1方法定义的一般形式84
4.1.2方法返回87
4.2方法的参数87
4.2.1形式参数87
4.2.2实际参数88
4.2.3参数传递机制88
4.3方法调用90
4.3.1方法调用的语法90
4.3.2常用库方法92
4.3.3方法调用的两种形式95
4.4命名参数98
4.5可选参数98
4.5.1带可选参数的方法98
4.5.2可选参数方法的调用99
4.6方法重载100
4.6.1方法重载定义100
4.6.2重载方法的调用102
习题102
第5章批量数据的表示与处理104
5.1一维数组的定义与使用104
5.1.1一维数组的定义与初始化104
5.1.2一维数组元素的引用106
5.2多维数组的定义与引用108
5.2.1矩形数组的定义与初始化108
5.2.2矩形数组元素的引用109
5.2.3交错数组的定义与使用110
5.3数组应用程序举例112
5.3.1foreach语句112
5.3.2数组应用举例113
5.4Array类及应用121
5.4.1Array类的常用属性和方法121
5.4.2Array类应用举例123
5.5数组与方法125
5.5.1数组元素作为方法参数125
5.5.2数组作为方法参数126
5.5.3数组作为方法返回值127
5.5.4数组与方法应用举例128
习题130
第6章复杂数据的表示与处理132
6.1结构体类型132
6.1.1结构体类型的定义132
6.1.2结构体类型变量134
6.1.3结构体与数组136
6.1.4结构体与方法139
6.2枚举类型140
6.2.1枚举类型的定义140
6.2.2枚举类型变量141
6.2.3位标志141
习题142
第7章类和对象143
7.1类的定义143
7.1.1类定义144
7.1.2类的成员定义144
7.2类的常用成员147
7.2.1字段147
7.2.2方法149
7.2.3属性151
7.2.4构造函数和析构函数155
7.3对象的定义和使用156
7.3.1对象的定义和创建156
7.3.2对象的初始化157
7.3.3对象的使用160
7.3.4对象的销毁162
7.3.5this访问162
7.4类的其他成员163
7.4.1常量163
7.4.2索引164
7.4.3事件165
7.4.4运算符165
7.5继承与派生167
7.5.1基类与派生类167
7.5.2派生类的定义168
7.5.3派生类的构成168
7.5.4派生类成员的访问169
7.5.5派生类的构造函数和析构函数170
7.5.6多态性172
7.6一些特殊的类形式174
7.6.1分部类174
7.6.2抽象类175
7.6.3密封类176
7.6.4静态类176
7.7作用域与生命期176
7.7.1作用域176
7.7.2生命期177
习题178
第8章规模化程序设计180
8.1接口180
8.1.1接口的声明180
8.1.2接口的实现181
8.2命名空间和程序集183
8.2.1程序集183
8.2.2命名空间和using指令184
8.3常用预处理指令187
8.3.1预处理指令的基本规则187
8.3.2声明指令188
8.3.3条件编译指令189
习题191
第9章永久性数据的操作192
9.1文件概述192
9.1.1文件和流192
9.1.2System.IO模型193
9.2文件存储管理195
9.2.1目录管理195
9.2.2文件管理198
9.3文件读写202
9.3.1按字节实现文件读写202
9.3.2按文本模式读写204
9.3.3按二进制模式读写206
习题209
附录A常用字符的Unicode编码表210
附录BC#语言关键字211
附录CC#语言运算符及其优先级、结合性213
参考文献215
2.1.2实数型31
2.1.3字符和字符串32
2.1.4布尔型33
2.2常量33
2.2.1整数字面常量33
2.2.2实数字面常量34
2.2.3字符字面常量34
2.2.4字符串字面常量35
2.2.5符号常量36
2.3变量36
2.3.1变量的概念37
2.3.2定义变量37
2.3.3使用变量37
2.3.4可空类型38
2.4运算符与表达式39
2.4.1运算符与表达式的概念39
2.4.2数值数据的运算与处理40
2.4.3文本数据的运算与处理43
2.4.4逻辑数据的运算与处理43
2.4.5其他运算符46
2.4.6常量表达式47
2.5赋值和类型转换47
2.5.1赋值运算符47
2.5.2类型转换48
习题50
第3章程序控制结构52
3.1语句52
3.1.1简单语句52
3.1.2复合语句53
3.1.3注释54
3.1.4语句的写法54
3.2输入与输出55
3.2.1输入方法55
3.2.2输出方法57
3.3程序顺序结构61
3.3.1顺序执行61
3.3.2跳转执行61
3.4程序选择结构62
3.4.1if语句62
3.4.2switch语句64
3.4.3选择结构的嵌套66
3.4.4选择结构程序举例66
3.5程序循环结构70
3.5.1while语句70
3.5.2do语句71
3.5.3for语句72
3.5.4break语句73
3.5.5continue语句74
3.5.6循环结构的嵌套75
3.5.7循环结构程序举例76
3.6异常处理78
3.6.1异常处理的概念78
3.6.2异常处理的实现78
3.7其他语句80
习题81
第4章模块化程序设计83
4.1方法定义83
4.1.1方法定义的一般形式83
4.1.2方法返回86
4.2方法的参数86
4.2.1形式参数86
4.2.2实际参数87
4.2.3参数传递机制87
4.3方法调用89
4.3.1方法调用的语法89
4.3.2常用库方法91
4.3.3方法调用的两种形式94
4.4命名参数97
4.5可选参数97
4.5.1带可选参数的方法97
4.5.2可选参数方法的调用98
4.6方法重载99
4.6.1方法重载定义99
4.6.2重载方法的调用101
习题101
第5章批量数据的表示与处理103
5.1一维数组的定义与使用103
5.1.1一维数组的定义与初始化103
5.1.2一维数组元素的引用105
5.2多维数组的定义与引用107
5.2.1矩形数组的定义与初始化107
5.2.2矩形数组元素的引用108
5.2.3交错数组的定义与使用109
5.3数组应用程序举例111
5.3.1foreach语句111
5.3.2数组应用举例112
5.4Array类及应用120
5.4.1Array类的常用属性和方法120
5.4.2Array类应用举例122
5.5数组与方法124
5.5.1数组元素作为方法参数124
5.5.2数组作为方法参数125
5.5.3数组作为方法返回值126
5.5.4数组与方法应用举例127
习题129
第6章复杂数据的表示与处理131
6.1结构体类型131
6.1.1结构体类型的定义131
6.1.2结构体类型变量133
6.1.3结构体与数组135
6.1.4结构体与方法137
6.2枚举类型139
6.2.1枚举类型的定义139
6.2.2枚举类型变量140
6.2.3位标志140
习题141
第7章类和对象142
7.1类的定义142
7.1.1类的定义143
7.1.2类的成员定义143
7.2类的常用成员146
7.2.1字段146
7.2.2方法148
7.2.3属性150
7.2.4构造函数和析构函数154
7.3对象的定义和使用155
7.3.1对象的定义和创建155
7.3.2对象的初始化156
7.3.3对象的使用159
7.3.4对象的销毁161
7.3.5this访问161
7.4类的其他成员162
7.4.1常量162
7.4.2索引163
7.4.3事件164
7.4.4运算符164
7.5继承与派生166
7.5.1基类与派生类166
7.5.2派生类的定义167
7.5.3派生类的构成167
7.5.4派生类成员的访问168
7.5.5派生类的构造函数和析构函数169
7.5.6多态性171
7.6一些特殊的类形式173
7.6.1分部类173
7.6.2抽象类174
7.6.3密封类175
7.6.4静态类175
7.7作用域与生命期175
7.7.1作用域175
7.7.2生命期176
习题178
第8章规模化程序设计179
8.1接口179
8.1.1接口的声明179
8.1.2接口的实现180
8.2命名空间和程序集182
8.2.1程序集182
8.2.2命名空间和using指令183
8.3常用预处理指令186
8.3.1预处理指令的基本规则186
8.3.2声明指令187
8.3.3条件编译指令188
习题190
第9章永久性数据的操作191
9.1文件概述191
9.1.1文件和流191
9.1.2System.IO模型192
9.2文件存储管理194
9.2.1目录管理194
9.2.2文件管理197
9.3文件读写201
9.3.1按字节实现文件读写201
9.3.2按文本模式读写203
9.3.3按二进制模式读写205
习题208
附录AASCII码对照表209
附录B常用字符的Unicode编码表211
附录CC#语言关键字212
附录DC#语言运算符及其优先级、结合性214
参考文献216