数据结构

Similar documents
没有幻灯片标题

CHAPTER VC#

Microsoft Word - 正文.doc

untitled

任务 3 加法运算练习游戏 019 这就需要用到 C# 语言的基础语法, 如数据类型 运算符和控制语句, 还需要其他的常用控件 在此任务的完成过程中, 读者可以接触到 C# 的数据类型 变量常量 运算符 控制语句等基础语法, 掌握以上知识点及其在软件开发中的应用 3.2 相关知识 预定义

CHAPTER 1

PowerPoint 演示文稿

Microsoft PowerPoint - 03.Fortran程序设计基础1

untitled

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

第3章 Java语言基础

JAVA 单元 2.1 四则运算机 ( 一 ) 单元教学进度设计 教学环节 教学内容 教师学生活动活动 反馈 反馈课前作业完成情况 反馈加分 1. 下面哪些是合法的变量名? ( ) A.2variable 答案 :DEG B..variable2 解答 : C.._whatavariable A:/

PowerPoint 演示文稿

Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx

设计模式 Design Patterns

OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料

《计算概论》课程 第十九讲 C 程序设计语言应用

Microsoft PowerPoint - 5. 指针Pointers.ppt [兼容模式]

计算概论A B03 C++语言的基本成分 - 运算成分(2)

运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2

<4D F736F F F696E74202D20B5DA32D5C220B5A5C6ACBBFA433531D3EFD1D4BBF9B4A1>

Microsoft Word - 01.DOC

ch02_Basic

第 章 程序由语句组成, 语句经常使用数据类型 运算符 表达式等 Java 语言的数据类型 运算符与表达式等是从 C++ 语言简化而来, 更加简洁 高效 2. 1 常量和变量 Java 程序运行时, 值不可修改的数据称为常量, 分为字面常量 ( 常数 ) 与标识符常量两种 变量是程序运行时值发生改变

<4D F736F F D205A572D2D A1AAA1AAD4ACE7F42D43D3EFD1D4CAB5D1B5BDCCB3CC2E646F6378>

3.1 num = 3 ch = 'C' 2

PowerPoint 演示文稿

Microsoft PowerPoint - 07 派生数据类型

第二章 Java 语法基础 实验目的 (1) 常量 变量与数据类型 a. 掌握 Java 的常量 变量声明及使用方法 b. 掌握 Java 各种数据类型的使用 c. 掌握基本的输入输出方法 (2) 运算符与表达式 a. 掌握算术运算 关系运算 逻辑运算, 及优先关系 b. 掌握表达式的使用 (3)

OOP with Java 通知 : Project 2 提交时间 : 3 月 15 日晚 9 点

内容简介 本书以教育部高等学校计算机科学与技术教学指导委员会编制的 关于进一步加强高等学校计算机基础教学的意见暨计算机基础课程教学基本要求 中有关计算机程序设计基础 (C 语言 ) 课程教学基本要求为指导, 结合教育部考试中心最新的全国计算机等级考试二级 (C 语言程序设计 ) 考试大纲要求和作者多

<4D F736F F D204323B3CCD0F2C9E8BCC6BDCCB3CCA3A8B5DA33B0E6A3A9CEA2BFCEB0E620B5DA33D5C22E646F63>

Microsoft PowerPoint - string_kruse [兼容模式]

Microsoft Word - 第3章.doc

Microsoft Word - 《C语言开发入门》课程教学大纲-2.doc

Mx* Language Reference Manual 2016 年 4 月 7 日 1 用词说明 未定义 指中央还没有表态指语言定义中不涉及的部分, 编译器和运行时环境如何表现是未知的 主要是为了给学生实现语言留下足够的空间, 标准测试集里不会出现涉及未定义部分的内容 例如 : 术语 : 源程

2015年计算机二级(C语言)模拟试题及答案(三)

OOP with Java 通知 : Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢

chap07.key

chp2

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

汹涌澎湃汹涌澎湃汹涌澎湃汹涌澎湃

期中考试试题讲解

"Hi" "Visual Basic 6.0" ""( 空字符串 ) 3. 货币 (Currency) 第 3 章数据类型及其运算 35 货币数据类型是为计算货币而设置的数据类型 在内存中用 8 个字节 (64 位 ) 存储, 精 确到小数点后 4 位 ( 小数点前 15 位 ), 在小数点后第 4

第一章 绪论

Microsoft Word - 第1篇(1-6).DOC

C++ 程序设计 OJ2 - 参考答案 MASTER 2019 年 5 月 3 日 1

第 1 章 C 语言的发展 特点与程序结构 本章主要介绍了 C 语言的发展 特点和程序结构, 重点阐述了程序设计的基本方法, 包括面向过程的程序设计和面向对象的程序设计 ; 算法的概念及其表示, 包括用自然语言 流程图 伪代码 N-S 流程图的表示方法 ; 最后介绍了 C 语言应用程序的开发过程 1

untitled

普通高等教育电气信息类应用型规划教材 程序设计基础 基于问题情境的 C 语言实践教程 张克军主 编 代俊雅副主编 北 京

没有幻灯片标题

Microsoft PowerPoint - 1. C++介绍.ppt [兼容模式]

Generated by Unregistered Batch DOC TO PDF Converter , please register! 浙江大学 C 程序设计及实验 试题卷 学年春季学期考试时间 : 2003 年 6 月 20 日上午 8:3

CC213

内容简介 C 语言是一种结构化程序设计语言, 本书通过大量的实例讲解 C 语言程序设计的方法, 主要内容包括 C 语言程序的结构 数据类型 运算符和表达式 数据的输入和输出 选择结构 循环结构 数组 函数 指针 编译预处理 结构和共用体 位运算 文件等 每个单元包括小结 实验 习题等 本书可作为高等

Microsoft Word - YYCXfm.DOC

Guava学习之Resources

内容简介 本书从结构化程序设计技术出发, 以 C 程序设计语言为载体, 以 Windows 下的 Visual C 为程序调试和运行平台, 通过对典型实例的算法及相应 C 语言代码的描述, 介绍了在程序设计过程中如何对问题进行分析 如何组织数据和如何描述解决问题, 揭示了在计算机应用过

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

STRUCT Tag OptTag ID Tag ID 7..4 Declarators VarDec ID VarDec LB INT RB FunDec ID LP VarList RP ID LP RP VarList ParamDec COMMA VarList ParamDec Param

FY.DOC

C 1

C/C++语言 - C/C++数据

内容简介本书主要内容包括程序设计基础知识 C 语言数据类型 运算符与表达式 程序结构 数组 指针 其他数据类型 函数 文件等, 通过对大量实例进行分析, 力求提高和培养学生的程序设计能力 本书有配套辅导教程 程序设计基础实训指导教程 C 语言 ( 科学出版社出版 ), 引导读者学习和巩固各章节内容

論鄭玄對《禮記‧月令》的考辨

C C

Microsoft Word - 新1-12.doc

1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F

PowerPoint 演示文稿

ISaGRAF專案基礎架構

第1章 Delphi简介

语言教程 1 C 语言概述 C 语言的发展过程 当代最优秀的程序设计语言 C 语言版本 C 语言的特点 面向对象的程序设计语言 C 和 C 简单的 C 程序介绍 输入和

C/C++语言 - 运算符、表达式和语句

class sometimes { int naive; void make_money() { this.naive++; int main() { sometimes keep = new sometimes; keep.naive = 0; while (getint() < Wallace)

试卷代号 :1253 座位号 E 口 国家开放大学 ( 中央广播电视大学 )2014 年秋季学期 " 开放本科 " 期末考试 C 语言程序设计 A 试题 2015 年 1 月 E 四! 五 总分! 一 单选题 ( 每小题 2 分, 共 20 分 ) 1. 由 C 语言源程序文件编译而成的目标文件的默


C++ 程序设计 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

PowerPoint Presentation

内容简介 本书根据全国计算机等级考试二级 C 语言程序设计考试大纲要求, 结合目前高等院校学生学习计算机程序设计课程的情况组织内容, 全面地介绍了 C 语言程序设计的基础知识, 系统地讲述了 C 语言程序设计的基本方法和技巧 本书以 ANSI C 语言标准为依据, 深入浅出地介绍了 C 语言的基本数

数值型常量数值型常量也就是常数 用来表示数量的大小 数值型常量由数字 ' 小数点和正负号构成 例如 )&'(+: & 等 有些很大或很小的数值型常量也可以使用科学记数法形式书写 例如 用 2(&+ 7 & 表示 2(&+ C ' & 用 &(+7: & 表示 &(+C ' : & 数值型数据在内存中

OOP with Java 通知 Project 2 提交时间 : 3 月 21 日晚 9 点 作业提交格式 学习使用 文本编辑器 cmd, PowerShell (Windows), terminal(linux, Mac)

林子雨《C语言程序设计》讲义PPT

概述

CYY 1.mps

CORBA IDL 部分语法 octet 8 位 8 位数保证传递过程中不变 (char 不是 ) IDL 提供两个模板类型 :sequence ( 序列 ) 和 string ( 字符串 ) 象数组一样, 要用 typedef 指定 sequence 和 string 类型的名字 一个序列是一个可

第1部分

untitled

2015年计算机二级(C语言)模拟试题及答案(四)

untitled

PowerPoint 演示文稿

第一部分 公共基础知识

Microsoft Word - 第3章.doc

Microsoft Word - 新建 Microsoft Word 文档.doc

第 21 讲 CGI 程序 byperl 及 PHP 小结 张高川 遗传学与生物信息学系基础医学与生物科学学院苏州大学医学部 WX: zhanggaochuan QQ: 苏州大学医学部基础医学与生物科

C 语言程序设计 ( 第 33 版 )) #define PI // 下面 2 行是函数的原型说明部分 double sup_area(double r); double volume(double r); // 下面是主函数部分 { double a=-5,b,c,d; b=fab

第二章 C++简单程序设计

Microsoft Word - 文前.doc

class sometimes { int naive; void make_money() { this.naive++; int main() { sometimes keep = new sometimes; keep.naive = 0; while (getint() < Wallace)

Microsoft PowerPoint - 4. 数组和字符串Arrays and Strings.ppt [兼容模式]

Transcription:

信息管理与信息系统专业 第 3 章变量与表达式 任课教师 : 吕雅丽

本章内容 3.1 C# 基本数据类型 3.2 常量与变量 3.3 创建并使用枚举类型 3.4 运算符与表达式类型 3.5 运算符的优先级与结合性 2

3.1 C# 基本数据类型 3.1.1 数值类型 1. 整数类型 整数类型又有有符号整数与无符号整数 有符号整数可以带正负号, 无符号整数不需带正负号, 默认为正数 有符号整数包括 sbyte( 符号字节型 ) short( 短整型 ) int( 整型 ) long( 长整型 ) 无符号整数包括 byte( 字节型 ) ushort( 无符号短整型 ) uint( 无符号整型 ) ulong( 无符号长整型 ) 3

3.1 C# 基本数据类型 2. 实数类型 实数类型包括 float( 单精度浮点型 ) double ( 双精度浮点型 ) decimal( 十进制型 ) 4

3.1 C# 基本数据类型 3.1.2 字符类型 1. Unicode 字符集 Unicode 是一种重要的通用字符编码标准是继 ASCII 字符码后的一种新字符编码 C# 支持 Unicode 字符集 5

3.1 C# 基本数据类型 表 3-1 部分 Unicode 编码 6

3.1 C# 基本数据类型 续表 3-1 部分 Unicode 编码 7

3.1 C# 基本数据类型 2. char( 字符型 ) char( 字符型 ): 数据范围是 0~65535 之间的 Unicode 字符集中的单个字符, 占用 2 个字节 3. string( 字符串型 ) string( 字符串型 ): 指任意长度的 Unicode 字符序列, 占用字节根据字符多少而定 string( 字符串型 ) 表示包括数字与空格在内的若干个字符序列, 允许只包含一个字符的字符串, 甚至可以是不包含字符的空字符串 8

3.1 C# 基本数据类型 3.1.3 布尔类型 bool 数据类型是被解释为 true 或 false 的无符号值, 默认值是 false 如果某个变量只能包含 真 / 假, 是 / 否 或 开 / 关 信息, 则将它声明为 bool 类型 bool m_flag1=true; // 正确 bool m_flag2=false; // 正确 bool m_flag3=(9>8); // 正确 9

3.1 C# 基本数据类型 3.1.4 对象类型 object( 对象型 ): 可以表示任何类型的值, 其占用字节视具体表示的数据类型而定 object( 对象型 ) 是所有其他类型的最终基类 C# 中的每种类型都是直接或间接从 object 类型派生的 10

3.1 C# 基本数据类型 预定义类型 定义 字节数 byte 0~255 之间的整数 1 sbyte -128~127 之间的整数 1 short -32768~32767 之间的整数 2 ushort 0~65535 之间的整数 2 int -2147483648~2147483647 之间的整数 4 uint 0~4294967295 之间的整数 4 long -9223372036854775808~ 9223372036854775807 之间的整数 8 ulong 0~188446744073709551615 之间的整数 8 表 3-2 基本数据类型 11

3.1 C# 基本数据类型 预定义类型 定义 字节数 bool 逻辑值 :true 和 false 1 float 单精度浮点值 4 double 双精度浮点值 8 decimal 精确的十进制值, 有 28 个有效位 16 object 其它所有类型的基类型 不定 char 0~65535 之间的 Unicode 字符 2 string 任意长度的 Unicode 字符串 不定 续表 3-2 基本数据类型 12

3.2 变量与常量 3.2.1 变量 1. 变量命名规则 在 C# 中, 变量命名规则如下 : 1 变量名的第一个字符必须是字母 ( 包括汉字 ) 或下划线, 其余字符必须是字母 ( 包括汉字 ) 数字或下划线 2 变量名不能是 C# 的关键字或库函数名 例如,sum, _S, 都是合法的变量名, 而 int, 2A, Number Of Student 是非法变量名 13

3.2 变量与常量 2. 声明变量 声明变量最简单的格式为 : 数据类型名称变量名列表 ; 例如 : int number; // 声明一个整型变量 bool open; // 声明一个布尔型变量 decimal bankblance; // 声明一个十进制变量 可以一次声明多个变量, 例如 : sbyte a, b; // 声明两个有符号字节型变量 如果一次声明多个变量, 变量名之间用逗号分隔 14

3.2 变量与常量 3. 变量赋值 C# 规定, 变量必须赋值后才能引用 为变量赋值需使用赋值号 = 例如: int number; number = 32; // 为变量赋值 32 也可以使用变量为变量赋值, 例如 : bool close; close=open; // 为变量赋值 true( 假设 open 为已声明的 bool 型变量, 其值为 true) 15

3.2 变量与常量 可以为几个变量一同赋值, 例如 : int a, b, c; a = b = c = 32; 可以在声明变量的同时为变量赋值, 相当于将声明语句与赋值语句合二为一 例如 : double area, radius = 16; 16

3.2 变量与常量 3.2.2 常量 1. 直接常量 (1) 整型常量 : 整型常量即整数, 整型常量有三种形式 : 十进制形式, 即通常意义上的整数, 如,123,48910 等 八进制形式, 输入八进制整型常量, 需要在数字前面加 0, 如,0123,038 等 十六进制形式, 输入十六进制整型常量, 需要在数字前面加 0x 或 0X, 如,0x123,0X48910 等 17

3.2 变量与常量 (2) 实型常量 : 实型常量即带小数的数值, 实型常量有两种表示形式 : 小数形式, 即人们通常的书写形式, 如 0.123, 12.3,.123 等等 指数形式, 也叫科学记数, 由底数加大写的 E 或小写的 e 加指数组成, 例如,123e5 或 123E5 都表示 123 105 18

3.2 变量与常量 (3) 字符常量 : 字符常量表示单个的 Unicode 字符集中的一个字符, 通常包括数字 各种字母 标点 符号和汉字等 字符常量用一对英文单引号界定, 如,'A','a','+', ' 汉 ' 等等 在 C# 中, 有些字符不能直接放在单引号中作为字符常量, 这时需要使用转义符来表示这些字符常量, 转义符由反斜杠 \ 加字符组成, 如 '\n' 19

3.2 变量与常量 C# 中常用的转义字符 \' 单引号, 字符单位需要引用 \" 双引号, 字符串单位需要引用 \\ - 反斜杠 \0 Null \n 换行 \r 回车 \t 水平制表 \v 垂直制表 20

3.2 变量与常量 (4) 字符串常量 字符串常量是由一对双引号界定的字符序列, 例如 : " 欢迎使用 C#!" "I am a student." 需要注意的是, 即使由双引号界定的一个字符, 也是字符串常量, 不能当做字符常量看待, 例如, A 与 A, 前者是字符常量, 后者是字符串常量 (5) 布尔常量 布尔常量即布尔值本身, 如前所述, 布尔值 true( 真 ) 和 false( 假 ) 是 C# 的两个关键字 21

3.2 变量与常量 2. 符号常量 常量就是在程序执行过程中, 其值固定不变的量 常量的声明格式 : const 常量类型常量名 = 值 ; 可以在一行中声明多个常量, 但它们必须具有相同的访问级别 要在一行中声明多个常量, 可用一个逗号和一个空格分隔声明, 如下例所示 : const int Four=4,Five=5,Six=6; 22

3.2 变量与常量 3.2.3 类型转换 数据类型的转换有隐式转换与显式转换两种 1. 隐式转换 隐式转换是系统自动执行的数据类型转换 隐式转换的 基本原则是允许数值范围小的类型向数值范围大的类型 转换, 允许无符号整数类型向有符号整数类型转换 23

3.2 变量与常量 2. 显式转换 显式转换也叫强制转换, 是在代码中明确指示将某一类型的数据转换为另一种类型 显式转换的一般格式为 : ( 数据类型名称 ) 数据 例如 : int x=600; short z=(short)x; 显式转换中可能导致数据的丢失, 例如 : decimal d=234.55m; int x=(int)d; 24

3.2 变量与常量 3. 使用方法进行数据类型的转换 (1) Parse 方法 : 可以将特定格式的字符串转换为数值 Parse 方法的使用格式为 : 数值类型名称.Parse( 字符串型表达式 ) 例如 :int x=int.parse("123"); (2) ToString 方法 : 可将其他数据类型的变量值转换为字符串类型 使用格式为 : 变量名称.ToString( ) 例如 :int x=123; string s=x.tostring( ); (3)Convert 类提供了常用的字符串转换为其他数据类型, 其他数据类型转换为字符串的方法 25

演示 : 整数相乘 1 控制台程序 : 输入两个整数的值, 计算并显示乘积 2 窗体程序 : 用户从键盘上输入整数, 之后点击相乘按钮, 将计算它们的积 图 3-1 整数相乘窗体设计 26

课后练习 : 计算圆柱体的体积 1 输入圆柱体的高度和宽度, 计算它的表面积和体积 2 尝试定义一个常量来表示圆周率 π 图 3-2 计算圆柱体体积窗体设计 27

3.3 创建并使用枚举类型 定义枚举类型 enum Planet { Mercury, Venus, Earth, Mars } 使用枚举类型 Planet aplanet = Planet.Mars; 显示变量 Console.WriteLine( {0}, aplanet); // 显示 Mars 28

3.3 创建并使用枚举类型 讨论 : 为什么需要使用枚举类型? 确保只将预定值赋给变量, 使变量易于维护 ; 允许给数值赋以简单易认的名字, 提高代码可读性 ; 易于输入, 因为代码编辑器的 智能感知 功能会显示可使用的列表 ; 允许指定一组常数值, 并定义仅接受该组常数值的类型 示例 :MessageBox.Show 方法的几种用法 29

3.3 创建并使用枚举类型 [ 多学一点 ] 消息框 MessageBox 消息框 MessageBox 通过调用 MessageBox 类的静态 Show 方法向用户显示文本消息 MessageBox 比较常用的方式有 : MessageBox.Show(string ); 显示一个字符串 MessageBox.Show(string,string); 显示一个字符串, 消息框带有标题 MessageBox.Show(string,string, MessageBoxButton, MessageBoxImage); 显示带标题的字符串, 同时显示按钮和图标 30

3.3 创建并使用枚举类型 例如 : MessageBox.Show(" 输入有误!"); MessageBox.Show(" 输入有误!"," 警告 "); MessageBox.Show(" 输入有误! ", " 警告 ",MessageBoxButtons.OKCancel); MessageBox.Show(" 输入有误! ", " 警告 ", MessageBoxButtons.OKCancel,MessageBoxIcon.Error); 图 3-3 MessageBox 运行效果 31

3.3 创建并使用枚举类型 图 3-4 MessageBoxButtons 枚举类型 图 3-5 MessageBoxIcon 枚举类型 32

3.3 创建并使用枚举类型 图 3-6 DialogResult 枚举类型 33

3.4 运算符与表达式类型 1. 算术运算符与算术表达式 算术运算符有一元运算符与二元运算符 1 一元运算符 :-( 取负 ) +( 取正 ) ++( 增量 ) --( 减量 ) 2 二元运算符 :+( 加 ) -( 减 ) *( 乘 ) / ( 除 ) %( 求余 ) 由算术运算符与操作数构成的表达式叫算术表达式 34

3.4 运算符与表达式类型 - 与 + 只能放在操作数的左边 增量与减量量符只能用于变量 二元运算符的意义与数学意义相同, 其中 %( 求余 ) 运算符是以除法的余数作为运算结果, 求余运算也叫求模 例如 : int x=6,y=2,z; z=x%y; //x 除以 y 的结果不是 3( 商 ), 而是 0( 余数 ) 要注意数据类型 例如 : int a,b=39; a=b/2; // a 的值为 18 35

3.4 运算符与表达式类型 2. 字符串运算符与字符串表达式 字符串运算符只有一个, 即 + 运算符, 表示将两个字符串连接起来 例如 : string connec="abcd"+"ef"; // connec 的值为 abcdef + 运算符还可以将字符型数据与字符串型数据或多个字符型数据连接在一起, 例如 : string connec="abcd"+'e'+'f'; // connec 的值为 abcdef 36

3.4 运算符与表达式类型 3. 关系运算符与关系表达式 >, <, >=, <=, ==,!= 依次为大于, 小于, 大于等于, 小于等于, 等于, 不等于 用于字符串的关系运算符只有相等 == 与不等!= 运算符 4. 逻辑运算符与逻辑表达式 在 C# 中, 最常用的逻辑运算符是!( 非 ) && 与 ( 或 ) 37

3.4 运算符与表达式类型 4. 逻辑运算符与逻辑表达式 在 C# 中, 最常用的逻辑运算符是!( 非 ) && 与 ( 或 ) 例如 : bool b1=!true; // b1 的值为 false bool b2=5>3&&1>2; // b2 的值为 false bool b3=5>3 1>2 // b3 的值为 true 38

3.4 运算符与表达式类型 5. 条件运算符与条件表达式 条件运算符是 C# 中唯一的三元运算符, 条件运算符由符号? 与 : 组成, 通过操作三个操作数完成运算, 其一般格式为 : 布尔类型表达式? 表达式 1: 表达式 2 39

3.4 运算符与表达式类型 6. 赋值运算符与赋值表达式 在赋值表达式中, 赋值运算符左边的操作数叫左操作数, 赋值运算符右边的操作数叫右操作数 左操作数通常是一个变量 复合赋值运算符, 如 *= /= %= += -= 等 40

3.5 运算符的优先级与结合性 1. 优先级 1 一元运算符的优先级高于二元和三元运算符 2 不同种类运算符的优先级有高低之分, 算术运算符的优先级高于关系运算符, 关系运算符的优先级高于逻辑运算符, 逻辑运算符的优先级高于条件运算符, 条件运算符的优先级高于赋值运算符 3 有些同类运算符优先级也有高低之分, 在算术运算符中, 乘 除 求余的优先级高于加 减 ; 在关系运算符中, 小于 大于 小于等于 大于等于的优先级高于相等与不等 ; 逻辑运算符的优先级按从高到低排列为非 与 或 41

3.5 运算符的优先级与结合性 2. 圆括号 可以使用圆括号明确运算顺序 例如 : string s=x>y?"greater than":x==y?"equal to":"less than"; string s=x>y?"greater than":(x==y?"equal to":"less than"); 括号还可以改变表达式的运算顺序 : b*c+d b*(c+d), 42

3.5 运算符的优先级与结合性 3. 结合性 在多个同级运算符中, 赋值运算符与条件运算符是由右向左结合的, 除赋值运算符以外的二元运算符是由左向右结合的 例如,x+y+z 是按 (x+y)+z 的顺序运算的, 而 x=y=z 是按 x=(y=z) 的顺序运算 ( 赋值 ) 的 43

课堂练习 : 使用运算符 1 读右列中的代码, 然后回答问题 int x=10; int y=x++;?y 的值是什么, 为什么? 2 读右列中的代码, 然后回答问题 x+=10;?x 的值是什么, 为什么? 3 读右列中的代码, 然后回答问题 int z=30; int a=x+y*z;?a 的值是什么? 为什么? 将该代码改写成更具有可读性的形式 4 读右列中的代码, 然后回答问题 int a=10; int b=a++; bool mybool=(a==b);? 这段代码做了些什么?myBool 的值是多少? 44

综合实例 : 某公司职工基本薪资的计算 某公司的月薪基数根据本月的公司效益进行确定 职工基本月薪根据其岗位系数来确定本人的月薪 该公司的岗位系数分为作业员 技术员 工程师 部门经理 4 级, 其系数分别为 0.9, 1.0, 1.5 和 2 现希望编制一个程序, 输入公司的月薪基数和该职工的岗位, 计算其该月基本月薪 如 : 该月公司月薪基数为 850.00 元, 该职工为工程师, 则其当月基本月薪为 850.00*1.5=1275.00 元 通过本演示, 了解 NumericUpDown 控件 ComboBox 控件 TextBox 控件的使用, 及掌握如何使用枚举类型, 并将枚举类型数据绑定到控件 45

演示 : 月薪计算 1 界面组成 NumericUpDown 控件, 命名为 numbasesalary ComboBox 控件, 命名为 combpost TextBox 控件, 命名为 txtsalary Button 控件, 命名为 btncaculate 46

演示 : 月薪计算 2 控件属性设置 numbasesalary 控件 : Value: 默认值, 设为 1000 Maximum: 最大值, 设为 5000 Minimum: 最小值, 设为 300 Increment: 增长值, 设为 10 DecimalPlaces: 小数位, 设为 2 ThousandsSeparator: 千分位符, 设为 True 47

演示 : 月薪计算 2 控件属性设置 combpost 控件 : DropDownStyle: 组合框的风格, 有以下几种形式, 使用第 3 项 : Simple: 列表框部分总是可见, 用户可以编辑文本 DropDown: 默认 正常时列表部分隐藏, 用户可以编辑文本 DropDownList: 正常时列表部分隐藏, 用户不可以编辑文本 Items: 组合框中列表项集合 SelectedItem: 用户选择的项目 48

演示 : 月薪计算 2 控件属性设置 使用集合编辑器设置组合框 (combpost) 的列表项 49

演示 : 月薪计算 为使得运行时, 第 0 项处于选中状态, 在 Form1_Load 事件中, 添加 以下代码 : private void Form1_Load(object sender, System.EventArgs e) { // 设置第 0 项为默认选项 combpost.selecteditem = combpost.items[0]; } 50

演示 : 月薪计算 3 读取用户输入的数值 double basesalary =(double)numbasesalary.value; double postcoefficient = 1.0; string post = combpost.selecteditem.tostring(); if (post ==" 作业员 ") { postcoefficient = 0.8; } else if (post == " 技术员 ") { postcoefficient = 1.0; } 使用 if 语句判断 51

演示 : 月薪计算 4 计算并输出 double salary = basesalary*postcoefficient; txtsalary.text = String.Format( {0:C},salary); // 以货币格式显示 有关格式化输出 String.Format( ) 方法请查阅资料 C 或者 c 表示货币 52

本章小结 本章通过一些小实例的分析和实现, 讲解了在 C# 编程过程中如何声明与使用常量和变量, 何时应该使用哪种数据类型, 每一种数据类型的含义及用法, 以及如何使用运算符和表达式, 让读者具备基本的 C# 编程知识 53