数据类型、常量、变量及表达式
第4章(常量、变量及表达式)
保存字(关键字)(见书P43 表4-1 C语言旳保存字)预定义标识符(库函数名,如:stdio;预编译命令,如:include)顾客定义标识符
4.2 数据类型
整型实型(浮点型)字符型(字符串)枚举型
类 型 进 制 表 示 范 围整型数 八、 十、十六 015, 15, 0x15 -215~ 215-1长整型数 八、 十、十六 015L, 15L, 0x15L -231~ 231-1实型数 十 123.5, 1.235e+2 10-38~1038
3、变量旳引用
2.3.3 变量数据旳存储与读取
变量所代表旳数据是存储在(计算机)内存中。在使用中往往希望数据旳存储应灵活、多样,以便于编程。
变量数据旳存储形式有: 静态存储 static 静态型 extern 外部型 动态存储 auto 自动型 register 寄存器型这部分旳内容在第五章函数中详细简介。
字符常量
3、字符型数据
字符串常量
转义字符
即一般字符用单引号括起来。在C语言中,字符型数据是用ASCII码来表达(储存)旳。 例:‘A’ (65),‘a’ (97)。在C语言中,字符型数据与整型数据可通用:10+‘R’
即”。
1、变量数据旳存储
变量 内存
a
b
变量 地址 内 存
a 2023
b 2023
直接读取:
间接读取:
2、变量数据旳读取
变量名实际代表一种拟定旳存储单元。程序编译完毕后,变量就与数据存储单元一一相应。对变量读取操作,就是到相应旳存储单元中读取数据。
符号常量
5 数据类型和表达式
变量名举例
strArea Print1 Client_Name 1Base_Ball Base.1 _Base1 Base Base1 BASE Print Name Text Picture
变量名可以参照以下几点: 变量名可以参照以下几点:
尽量选择有意义的名字 可以将变量名各组成部分的开头字母大写, 或加下划线。 可在变量名的前面加一前缀来提示变量的 类型。53页表3 类型。53页表3-3。 strName intAge blnSex sngHeight
算术运算的一般形式 算术运算的一般形式为: 一般形式为 a Op b 或 OP b 其中Op表示运算符, 是左操作数, 是右操作数。 其中Op表示运算符,a是左操作数,b是右操作数。 表示运算符 例如: 例如:100 * 45 a和b也可以是一个表达式。 也可以是一个表达式。 例如: 例如:23 / 5 + 1.2 由数值型数据、算术运算符和圆括号 和圆括号构成的表 由数值型数据、算术运算符和圆括号构成的表 达式称为数值表达式。 算结果为数值型数据。 达式称为数值表达式。其运算结果为数值型数据。 例如: b+sqr(b^2 *a*c))/(2 例如:(-b+sqr(b^2-4*a*c))/(2*a) 特殊情况: 特殊情况 : 单个数值型常量或变量或函数也是 数值表达式。 数值表达式。 例如: 例如:0.5,Pi,a,sin(x)
(3)全局变量
全局变量的作用范围最大,对程序的所有 窗体和模块都有效。 声明时在模块窗口的通用/声明段,用Public 声明时在模块窗口的通用/声明段,用Public 或Global关键字。 Global关键字。
三、常量
顾名思义,常量的值在程序执行过程中保 持不变,不允许用户去改变它。 常量分文字常量和符号常量两种。 常数
3 数据类型、运算符和表达式
三、整型数据
3.1.整型常量 整型常量即整常数按不同的进制区分, 整型常量即整常数按不同的进制区分 , 整型常数 有三种表示方法: 有三种表示方法:
十进制数: 以非0 220, 560, 十进制数: 以非0开始的数 如:220, -560, 45900 八进制数: 06; 0106, 八进制数: 以0开始的数 如:06; 0106, 十六进制数: 十六进制数: 以0X或0x开始的数 如:0X0D, 0XFF, 0x4e
一般情况下,符号常量名用大写、变量用小写。 一般情况下,符号常量名用大写、变量用小写。
3、符号常量的声明和使用 一般放在程序的前端, <…>在一块: 一般放在程序的前端,与#include < >在一块: #define 符号常量名 值 如:#define Zero 0 好处: 好处: 含义清楚 (#define Second 60) (#define (#define 一改全改 (#define PI 3.14)
3. 整型变量的溢出
main(){ i,j; int i,j; unsigned k,l,m; k,l,m; i=32767 32767; i=32767; j=i+1 j=i+1; l=65535 65535u l=65535u; m=l+2 m=l+2; printf("j=%d\n",j); printf("j=% n",j); printf("l=% n",l); printf("l=%u\n",l); printf("m=% n",m); printf("m=%u\n",m); }
3.2、整型变量 整型变量的分类:加上不同的修饰符 1 . 整型变量的分类 : 加上不同的修饰 符 , 整型变 量有以下几种类型; 量有以下几种类型; C 语言标准没有规定整型变量在计算机内存中所 占的字节数,它与具体的机器和操作系统有关: 占的字节数,它与具体的机器和操作系统有关:
第3章基本数据类型与表达式
不要将字符常量与字符串常量混淆。’a‘是字符常量, 而“a‖是字符串常量,二者是不相同的。例: char c; c=‗a‘; 是正确的 c=―a‖; 不正确 因为不能把一个字符串赋给一个字符变量。
字符常量与字符串的区别: (1)字符常量在内存中占一个字节,而字符串不 是; (2)C规定:在每一个字符串的结尾加一个“字 符串结束标志”,以便系统据此判断字符串是否 结束。C语言以‘\0‟作为字符串结束标志。即是 一个“空操作字符”。 注意:在写字符串时不必加‘\0‟,系统会自动加 上的。因此,字符串“a”,它在内存中实际上是 包含2个字符:‘a‟和‘\0‟。 在C语言中可以用字符型数组来存放字符串。
表2.1 Turbo C所支持的整型数据类型
关键字 int unsigned int 所占位数 16 16 最小取值范围 -32768~32767 0~65535
unsigned short int
signed short int
16
16
0~65535
同 int
long int
unsigned long int
例:向字符变量赋以整数。
main()
{ char c1, c2;
c1=97;
/*c1,c2为字符变量*/
c2=98;
printf(―%c printf(―%d } 输出结果: a 97 b 98 %c\n‖ , c1, c2); /* %c是字符输出的格式*/ %d\n‖, c1, c2);
例:大小写字母的转换
程序运行结果为: a+u=22, b+u=-14
3.4 实型数据
3.4.1 实型常量的表示方法
C语言程序设计 第2章 数据类型
2.2常量和变量 变量名与变量值的关系:
2.2常量和变量
变量的使用:先定义后使用
变量定义的一般形式:
数据类型 变量名1,变量名2,…,变量名n;
2.2常量和变量
➢ 凡未被事先定义的,系统不把它认作变量名,这就 能保证程序中变量名使用的正确
例:varname,在使用的时候误写成vaname
➢ 在定义变量时要指定变量的类型,在编译时就能为 变量分配相应的存储单元
5
2.2常量和变量
甘草 三七 干姜 葛根
枸杞 人参 陈皮 地黄
山药 当归 谷芽 黄连
贴上标签 加以区分
用标识符给变量起名字
2.2常量和变量 变量命名规则
➢ 只能由字母(a~z,A~Z)、数字(0~9)和下划线(_)构 成
➢ 第一个字符不能为数字 ➢ 不能与关键字同名
例:a9,_a, A_num √ 9a, a*num,int ×
控制语句:控制语句用于控制程序的流程。 C语言提供三类控制语句: ➢ 选择语句 ➢ 循环语句 ➢ 转移语句。 控制语句会在第三章和第四章详细介绍。
2.7 表达式与语句
复合语句: 复合语句由一对大括号括起来的一 条或多条语句组成。 例:{
turnOn(0,3); turnOn(0,4); turnOn(0,5); turnOn(1,4); }
2.7 表达式与语句
表达式语句:表达式末尾加上“;”就构成一条 表达式语句。 例:
s = 3.14 * r * r; 就是一条赋值表达式语句。表达式语句最后的 分号是语句中必不可少的一部分。
2.7 表达式与语句
函数调用语句:函数调用语句由函数调用加分 号构成。 例:
turnOn(1,1);
2.2.2.1数据类型、常量与变量
数据类型、常量与变量
2.2.1 数据类型
数学中“数”的类型:
VB的数据类型
注意点: 注意点:
数据类型实际上是一种约定。 单精度和双精度又合称为浮点型。 用“”表示空串。 VB中也常用数值0表示假值,-1表示真值。
例:
Dim a As Integer a = 100 If a Then Print "True!" Else Print "False!" End If
变量声明
变量应该先声明后使用。 中变量声明的方法是 中变量声明的方法是: 变量应该先声明后使用。VB中变量声明的方法是:
Dim <变量名> As <数据类型> <变量名> <数据类型> 变量名 数据类型 如:Dim str as String 可以在一行中定义多个变量, 注:可以在一行中定义多个变量,如: Dim dtmBeginTime As Date,dtmEndTime As Date 课堂练习: 课堂练习: P24 实践 2
2.2.2 常量与变量
1.常量:在程序运行期间始终保持不变。
注:如果程序中多次用到同一个常量,往往用一个有意 义的符号表示,这种常量称为符号常量。定义如下:
Const 常量名 [As 类型]=表达式
2.变量:赋予它新的含义。变量命名必须以字母或汉字开头,而不能以数字或其他 字符开头。 只能由字母、汉字、数字和下画线组成,不能 含有小数点、空格等字符。 字符个数不超过255个。 变量名不能使用VB中的保留字。 VB不区分变量名中字母的大小写。 为增加程序的可读性,变量名最好取有意义的 名称,建议前面加上类型缩写。(p23)
C语言第02章 数据类型、运算符与表达式
回到 首页
运算符和结合性 P325,附录3
2.8 算术运算符和算术表达式
3、自增、自减运算符
自增运算符++和自减运算符--均是单目运算符, 功能是使变量的值增1或减1。其优先级高于所有 双目运算符,结合性为右结合性(自右至左)。
回到 首页
例如:++i或i++ 等价于i=i+1; --i或i-- 等价于i=i-1;
2.7数值型数据之间的混合运算
回到 首页
1、整型、实型、字符型数据之间可以混合运 算
整型(包括int,short,long)和实型(包括float,double)数据可 以混合运算,另外字符型数据和整型数据可以通用,因此,整 型、实型、字符型数据之间可以混合运算。 例如,表达式10+'a'+1.5-8765.1234*'b'是合法的。
2.9赋值运算符和赋值表达式
1、赋值运算符和赋值表达式
赋值运算符:“=”为双目运算符,右结合性。 赋值表达式:由赋值运算符组成的表达式称为赋值表达 式。 赋值表达式一般形式: 变量 赋值符 表达式 如 a=5 类型转换:将高精度的数据类型赋值给低精度的数据类 型,可能出错。
回到 首页
2.9赋值运算符和赋值表达式
2.8 算术运算符和算术表达式
3、自增、自减运算符
回到 首页
y=++x;等价于先计算x=x+1(结果x=6),再执行y=x,结果y=6。 y=x++;等价于先执行y=x,再计算x=x+1,结果y=5,x=6。 y=x++*x++;结果y=25,x=7。x++为后缀形式,先取x的值进行“*” 运算,再进行两次x++。 y=++x*++x;结果y=49,x=7。
常量、变量、函数与表达式
常量、变量、函数与表达式⒈常量常量(constant)是指在程序运行过程中保持不变的量,在V isual Basic中,常量一般分为数值常量与字符串常量两种。
⑴数值常量数值常量就是数学中说的常数,数值常量有整型常量和实型常量两种。
整型常量即整数,是指不带小数的数值,如1、0、-10、+107等都是合法的整数。
实型常量即实数,是指带小数的数值。
实型常量又分为定点数和浮点数两种。
定点数:3.14159 ,-6.8,1.997浮点数:2e6、1e5、88E-18浮点数对应的就是数学上的科学计数法,以幂数形式表示一个实数,例如1234.56可以表示为1.23456×103 。
由于程序中无法表示上标和下标,因此用英文字母"E"(或"e")表示底数10,则1.23456×103可表示为1.23456E3。
⑵字符串常量被一对双引号括起来的若干个合法的字符称为字符串常量。
例如"china"、"Visual Basic"、"18"、"3.14"等。
字符串常量指的是双引号中的字符,不包括双引号本身。
⑶符号常量如果程序中多次用到同一个常量,则可以用一个有意义的名字表示这个常量,称为符号常量,代表常量的符号称为"常量名",常量名的命名方法与后面的变量名一样。
例如,求圆的周长和面积的程序代码:Let r=5Let s=3.14159*r*rLet c=2*3.14159*rPrint "s=";s, "c=";c可以先用Const语句定义一个符号常量pi代替3.14159,形式如下:Const 常量名[As 类型]=表达式则可以写出如下的程序代码:Const pi As Single=3.14159Let r=5Let s=pi*r*rLet c=2*pi*rPrint "s=";s, "c=";c当常量需要改动时,仅需改动符号常量定义语句。
03数据类型和表达式
GDI+ Windows的应用程
序的丰富用户
数据库
的各种对象
26
3.2.3 不同数据类型的转换
隐式转换: 运算结果的数据类型向精度高的数据类型靠 Integer<Long<Single<Double<Currency
优先级
算术运算符>=字符运算符>关系运算符>逻辑运算
显式转换: Ctype(表达式,转换到类型名) 例如:Ctype(123,string)
程序设计与实践 VISUAL
上海理工大学 信息基础教研室
第三章 语言基础
1 2 3 4 5
变量、常量与数据类型 运算符和表达式 常用函数 程序结构和编码规则 综合应用
2
3.1 数据类型、变量和常量
整数 数值型 浮点数 货币型 字节型 字符型 逻辑型 日期型 对象型 短整型 长整型 整型 单精度型 双精度型
18
1. 算术运算符
例
5+10 mod 10 \ 9 / 3意
对算术运算符两边的操作数应是数 值型,若是数字字符或逻辑型,则自 动转换成数值类型后再运算。
例
30-True 结果是31,逻辑量True转为数值-1, False转为数值0 False + 10 + “4” 结果是: 14
注 意
字符和字符串都必须是用西文的双引号引起 ""表示空字符串,而" "表示有一个空格的字符; 若 字 符 串 中 有 双 引 号 , 例 如 , 要 表 示 字 符 串 : 123"abc , 则 用 连 续 两 个 双 引 号 表 示 , 即 : "123""abc"。
Visual Basic6.0基础知识之数据类型、常量、变量
Visual Basic6.0基础知识之数据类型、常量、变量一、数据类型(1)字符串型:定长字符串:String*n(变长)字符串:String,一个字符2个字节,尾符$(2)数值型:整型:Integer,2字节,-32768~+32767,尾符%长整型:Long,4字节,尾符&单精度型:Single,4字节,尾符!双精度型:Double,8字节,尾符#货币型:Currency,8字节,尾符@(3)字节型:Byte,1字节,0~255非负整数(4)变体型(可变型):Variant,可存放任意类型,并随之改变类型(5)布尔型:Boolean,2字节,值为True或False(6)日期型:Date,8字节(7)对象型:Object,4字节,对对象(控件)的引用二、常量(程序执行过程中,其值始终保持不变的量称为常量。
)1、字面常量①字符串常量:用双引号括起来的一串字符,是除双引号和回车键之外的任何字符。
②数值常量:包括整数常量、定点数常量和浮点数常量整数:十进制、十六进制(以&H或&h开头)、八进制(以&O或&o开头)三种形式。
定点数:带有小数点的正数或负数。
浮点数:由尾数、基数、阶码三部分组成。
基数(代表十进制的10):E或e三部分缺一不可。
阶码不能带小数位。
③布尔型常量:只有两个值:True、False④日期型常量:用“#”号括起来。
AM:上午PM:下午2、符号常量(名词解释)符号常量是在程序中用标识符表示的一些永远不变的常数或字符串。
分为系统内部定义的符号常量和用户定义的符号常量。
①系统内部定义的符号常量。
在程序设计中可以直接使用,特征是以“vb”开头。
②用户定义的符号常量可以用Const语句来声明,语法格式如下:Const 常量名 [As 类型] = 常量表达式一旦声明了常量,就不能在此后的语句中改变它的数值。
常量表达式中不能使用变量和函数。
三、标识符命名规则(简答)①标识符必须以字母开头,可以由字母、数字、下划线组成。
第2讲 Visual FoxPro的数据基础
4、显示内存变量值 、
[like<通配符 通配符>] display/list memory [like<通配符>] [to file<文件名 文件名>] printer/to file<文件名>]
说明: 说明: 显示内存变量的当前信息, 显示内存变量的当前信息,可以将这些信息送到一文本文件 .TXT文件 文件) (*.TXT文件)或打印出来 通配符包含符号: 通配符包含符号:* 或 ?。 *:表示任意多个任意字符 ?:表示一个任意字符 ?:表示一个任意字符 例: x1=30 x2=”计算机 计算机” x2=”计算机” xx3=.T. xy={^2005/11/24} &&显示所有以 显示所有以x display memory like x* &&显示所有以x开头的内存变量的 信息
(1)内存变量赋值命令 【命令】 <内存变量名>=<表达式> 【功能】 将表达式的值,赋值给一个内存变量。 (2)存储命令 【命令】 STORE <表达式> TO <内存变量名表> 【功能】 将表达式的值依次赋值给多个内存变量。 【例3-1】 定义下列X,Y,A,B,C内存变量。 X=12.3 && 将12.3赋值给变量X,变量类 型为数值型 Y="VFP" && 将字符串Visual FoxPro赋值 给变量Y,变量类型为字符型 STORE 3*5 TO A,B,C && 将表达式值15分别赋值给A, B,C三个变量 【说明】 命令后的符号&&表示对命令行的注释。
3.3.2 数组变量
1、概念:数组是按一定的顺序排列的一组名称相同,但顺序号不同的内存变 、概念:数组是按一定的顺序排列的一组名称相同, 量的集合。 量的集合。
2.3 数据类型、常量、变量及说明方法
2、实数类型
• 实数类型包括正实数、负实数和实数零。它的 类型标识符为real。实数的表示方法有两种。 • (1)日常表示法:就是我们平常使用的带小 数点的表示方法。例:2.5,-1.6,0.0都是合 法的。必须注意小数点前后都应该有数字,例: 7.,.8都是非法的。一个整数可以当做实数使 用,单反过来不行。
2.3.1 标准数据类型
• 1、整数类型 整数类型包括正整数(+号可略)、负整数和零。 例:168,+520,0,-1都是合法的整数。 注意:1,024在会计学中是允许的,但在这里是 非法的,应去掉“,”号。 整数类型的标识符为integer。除了常用的 integer(整型)外,Turbo Pascal还支持以 下4种整数类型:
2.3.2 常量
• 所谓常量,是指在程序执行过程中其值不能改 变的量,他们可以是整型、实型、字符、字符 串。如5,6.8,‘F’,‘gj’,1E6都是常量。 • 常量定义的一般形式: const <常量标识符>=<常量>; 其中const是保留字。如const pi=3.14; t=true;
Pascal对常量定义要求如下:
Pascal语言规定,可以对实 型数据进行如下操作:
(1)算术运算 运算符有+、-、*、/,运算结果为实数。 /叫实 数除,即使有一个数为整数,甚至两个数都是 整数,系统自动将整数转换为实数后再运算, 结果仍为实数。 例:7 /2=3.5 6 /3=2.0 (2)关系运算 实数可以做关系运算,运算对象还可以有一个整 数,但运算结果都是布尔类型。
(2)逻辑运算
• not:表示对原值进行逻辑否定,假设x为布尔 量,其值为false,则not x的值为true。好像 电灯的开关钮,按一下开,再按一下关。 • and:表示对两个逻辑量(如x,y)进行“与” 运算,即x and y,只要x,y有一个为false, 则运算结果也为false,好像串联电路的开关。 • or:表示对两个逻辑量(如x,y)进行“或” 运算,即x or y,只要x,y有一个为true,则 运算结果也为true,好像并联电路的开关。
数据类型、常量、变量及表达式
变量和常量的定义及使用、运算符和表达式的使用及常用内部函数 的使用。 本章难点:
数据类型、内部函数。 3.1 VB语言字符集及编码规则 一、VB的字符集 l 字母:大写英文字母A—Z;小写英文字母a—z。 l 数字:0一9; l 专用字符:共27个, 二、编码规则与约定 (一)、编码规则 1.VB代码中不区分字母的大小写。 2.在同一行上可以书写多条语句,但语句间要用冒号“:”分隔。 3.若一个语句行不能写下全部语句,或在特别需要时,可以换行。换 行时需在本行后加入续行符,1个空格加下划线“_”。 4.一行最多允许255个字符。 5.注释以Rem开头,也可以使用单引号“'”,注释内容可直接出现在语 句的后面。 (二)、 约定 1.为了提高程序的可读性,对于VB中的关键字其首字母大写,其余字 母小写 2. 注释有利于程序的维护和调试 Rem开始 或 单撇 ‘。 例如: ’ This is a VB
用,系统临时为新变量分配存储空间并使用,这就是隐式声明。所有隐 式声明的变量都是Variant数据类型。Visual Basic根据程序中赋予变量的 值来自动调整变量的类型。 例如: 下面是一个很简单的程序,其使用的变量a, b, Sum都没有事先定义。 Private Sub Form_Click() Sum = 0 a = 10: b = 20 Sum = a + b
"100" + 123
' 结果为 223
"100" + "123"
第2章基本数据类型、常量及变量
型必须有一个长度的限制
这个长度是指数据存储在计算机中需要占用多少个 字节数 不同类型的数据在内存中占用的字节数是不同的
溢出处理
不同的数据类型规定了不同的机内表示长度,
也决定了对应数据量的变化范围,当某一数据 超出该数据类型所规定的范围时,计算机会拒 绝接受,而将之转换成范围内的另外某个数, 这种情况称之为溢出处理。
6
3.常量
常量
在程序运行过程中其值不能被改变的量值
例1:
1,200 3.1,-4.0 „A‟,‘b‟ “abc”,“AB\n”
提示
在程序中使用常量时,一般不需要具体指出它属于 哪一种类型C语言编译系统会自动根据常量的数据 大小和直观形式来确定它的数据类型 例2:
3,3.0,‘3‟,“3”
提示
每个数据类型都有固定的表示方式
这个表示方式确定了可能表示的数据范围以及数据在内存中 的存放形式 C程序中所出现的所有数据都必须明确指定其数据类型
数据类型的体现
常量和变量是在计算机中数据类型的表现形式
不再是抽象的概念而是实在的数据,这些数据符合对 数据类型的规定(形式和运算规则两方面) 常量和变量之间的区别在于程序执行过程中的变化情 况
3.常量
整型常量
一个整数 常用的整数类型(IBM PC机及其兼容机上对C语言整型数的规定 )
整型
2字节: -32768~32767 4字节:-2147483648~2147483647 2字节: 0~65535 4字节 :0~4294967295
长整型
C语言第3章数据类型、运算符、表达式
例如
➢字符常量‘a’占一个字节 ➢字符串常量"a" 占2个字节
‘a’ → “a” →
0110 0001 ……
0110 0001 0000 0000
(97)10
(97)10 (0)10
7.变量赋初值
变量赋初值
C语言允许定义变量时赋予初值。
➢int i = 6;
也可对某个变量赋初值:
➢int a, b, c = 6;
如: 0x16, 0x28
4.整型数据
整型变量
分类:
➢基本型 用“ int ”定义; ➢短整型 用“ short int ”或 “ short ”定义; ➢长整型 用“ long ”或 “ long int ”定义; ➢无符号型 用“ unsigned ”定义,不存放符号;
整型变量定义方式
➢基本整型:int a, b, c; ➢短整型 : short int 或 short a, b, c; ➢长整型: long int 或 long a, b, c; ➢无符号型:unsigned a, b; unsigned short a, b
10+‘a’+1.5–8765.1234 ‘b’
8.各种数值型数据间的混合运算
转换方法(自动转换)
double float
高
long
unsigned
低 int char, short
图中“ ” 表示必定转换。如'a' +' b',先转换为int,结果为 int。
既使是同一种类型也按" "转换。
对于“++”和“--”的使用要避免二义性
10.赋值运算符和赋值表达式
基本数据类型与表达式
数据的存储格式
字符型数据:
使用一个字节,存放一个ASCII字符,示意图如下:
7
0
01 0 0 0 0 0 1
‘A’字符ASCII 为65
ASCII的范围:0 – 127 一个字符数据可以当作一个整数使用
5
#include <iostream> using namespace std; int main()
显示ASCII字符集的 程序
{
char ch;
for(int i=0;i<128;i++)
{
ch=char(i);
cout<<ch<<"\t"<<i<<"\t";
}
return 0;
}
6
7
整型数据的存储格式
短整型 short 15
87
0
短整数表示范围为:-215~215-1 (-32768~32767)
int i, j, k; // 说明了3个整型变量
long len; // 说明了1个长整型变量
float average, sum;
// 说明了两个浮点类型的变量
double distance, weight; // 说明了两个双精度类型的变量
•变量名命名规则与标识符相同。
13
二.变量的初始化
定义变量时赋初值:
实型数据分为:浮点型(float)和双精度型(double)
31
24 23
16 15
87
0
尾数部分
指数部分
一般浮点数的可以达到7位有效数字。例如1234.567。 双精度浮点数的有效位数可以达到15~16位。
标识符、关键字、常量、变量、字符串、 表达式的概念
标识符、关键字、常量、变量、字符串、表达式的概念
1.标识符(Identifier):标识符是用来标识程序中各种元素(如变量、函数、类等)的名称。
标识符通常由字母、数字和下划线组成,但必须以字母或下划线开头。
标识符对大小写敏感。
例如,myVariable 是一个标识符。
2.关键字(Keyword):关键字是编程语言中的保留字,具有特殊含义,不能用作标识符。
例如,int、if、for 都是C++中的关键字。
3.常量(Constant):常量是固定不变的值,可以直接在代码中使用。
常见的常量类型包括整数常量、浮点数常量、字符常量等。
例如,10、3.14、'A' 都是常量。
4.变量(Variable):变量是用于存储和操作数据的内存位置。
变量具有数据类型,可以在程序中赋值和修改。
例如,int age = 25; 定义了一个整数类型的变量 age 并赋值为25。
5.字符串(String):字符串是一系列字符的序列,通常用于表示文本。
在C++中,字符串可以使用双引号 " " 来表示。
例如,"Hello, World!" 是一个字符串。
6.表达式(Expression):表达式是由运算符、操作数和函数调用等组成的代码片段,用于执行某种计算或操作。
表达式可以包括算术运算、逻辑运算、赋值等。
例如,x + y 是一个表达式,表示变量 x 和 y 的求和。
第2章 数据类型、运算符、表达式
第二章 数据类型、运算符、表达式一、数据类型C 语言中的数据类型比别的语言丰富。
基本类型的数据又可分为常量和变量,它们可与数据类型结合起来分类,即为整型常量、整型变量、实型(浮点型)常量、实型(浮点型)变量、字符常量、字符变量、枚举常量、枚举变量。
1、常量与符号常量常量:在程序执行过程中,其值不发生改变的量称为常量。
常量区分为不同的类型,如68、0、-12为整型常量,3.14,9.8为实型常量,‘a ’,‘b ’,‘c ’则为字符常量。
常量即为常数,一般从其字面即可判别。
符号常量:有时为了使程序更加清晰和便于修改,用一个标识符来代表常量,即给某个常量取个有意义的名字,这种常量称为符号常量。
如:#define PI 3.142、变量变量:程序执行过程中其值可以改变的量。
定义方法定义形式:数据类型 变量名1,变量名2,……变量名n ;整型(int )数据类型 基本类型 整型 单精度型(float )字符型(char )长整型(long )短整型(short )实型 双精度型(double )枚举类型(enum )共用体类型(union )构造类型结构体类型(struct )数组类型空类型(void )指针类型(*)如:char ch1, ch2; /* ch1,ch2为变量*/float x, y; /* x ,y 为实型变量*/int a, b, c; /* a,b,c 为整型变量*/在书写变量说明时,应注意以下几点:(1) 允许在一个类型说明符后,说明多个相同类型的变量。
各变量名之间用逗号间隔。
类型说明符与变量名之间至少用一个空格间隔。
(2) 最后一个变量名之后必须以“;”号结尾。
(3) 变量说明必须放在变量使用之前。
一般放在函数体的开头部分。
另外,也可在说明变量为整型的同时,给出变量的初值。
其格式为:类型说明符 变量名标识符1=初值1,变量名标识符2=初值2,...;3、数据在内存中的表示整型数据:以二进制的形式表示(1) int 类型正数: 如 123 (+123)用 16 位二进制(二个字节)表示原码 反码(原码同) 补码(原码同)最大正整数 215-1=214+213+212+211+210+29+2827+26+25+24+23+22+21+20=32767负数:如 –123原码补码(补码加 1)1取反加1 最大负整数-215=32768 因为 -215 < -(215-1) 所以用 -215 而不用 -(215-1)(2) unsigned (int) 类型称为无符号整数,它不是指不带“+ 或 -”号的整数,而是指内存表示这类数时没有符号位,16最大数215+214+213+2122+21+20=65535最小数 0 (3) long (int) 类型用 32 位二进制(四个字节)表示,其他同 int 型(4) short 类型有的计算机(小型、中型、大型机)int 即是 long ,而short 用16 位二进制(二个字节)表示。
C语言程序设计实训教程第2章 数据类型、常量、变量、运算符与表达式
22
23
【例 2.8】 两个 char型数相加,结果为 char 型。( )[判断题,重庆市 2005年第 1次等级考 试] 答案:错 分析:结果是 int型。char型数据在运算前,先 无条件转换成 int型,再参与运算。
24
4)强制类型转换 【例 2.9】 若有 int k =5;float x=1.2;则表达 式( int)( x+ k)的值是( )。[单选题,重庆 市 2001年第 1次等级考试] A.5 B.6.2 C.7 D.6 答案:D
8
返回给定类型或表达式(运算结果)的字节数 (以 unsigned int的形式)。 强制转换运算符 把表达式的结果转变为所需的 类型。 (类型)表达式 运算过程中类型的转换 如图 2.1所示,横向表示无条件的转换,比如 在计算前,char型要先转换成 int再参与计算。 竖向表示操作符两边的操作数属于不同类型时, 精度低的向精度高的方向转换,然后再参与运算, 运算结果为转换后的类型。
9
赋值时类型转换 在赋值时,赋值号右边表达式 的值的类型自动转换为其左边变量的类型。 位运算符 位运算的操作数为整型或字符型。位 运算就是把整数的内部二进制形式按位进行运算。
图 2.1 C 语言类型转换示意图
10
①按位取反∽ 运算规则:
11
②位与(&) 运算规则:
12
③位或( |) 运算规则:
6ห้องสมุดไป่ตู้
运算符 分算术运算符、赋值运算符、关系运算 符、逻辑运算符、逗号运算符、自增和自减运算符、 条件运算符、位运算符等。 表达式 由运算符连接运算对象构成的式子。可 根据运算符的不同分类为算术表达式、赋值表达式、 关系表达式、逻辑表达式、逗号表达式、条件表达 式等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意:使用运算符“&”时,变量与运算符“&”之间应加一个空格。这是
因为符号“&”还是长整型的类型定义符,如果变量与符号“&”接在一
起,VB系统先把它作为类型定义符处理,因而就会出现语法错误。
3.4.3 关系运算符与关系表达式
关系运算符都是双目运算,是用来比较两个运算量之间的关系,关系表
达式的运算结果为逻辑量。若关系成立,结果为True,若关系不成立,
在程序中,某个常量多次被使用,则可以使用一个符号来代替该 常量,这样不仅在书写上方便,而且有效地改进了程序的可读性和可维 护性。 VB中使用关键字Const 声明符号常量。其格式如下: Const 常量名 [As 类型|类型符号]=常数表达式 例如: Const PI#=3.1415926535 等价于: Const PI As Double=3.1415926535 三、系统常量
例如: 对于一个学生的“学号”、“姓名”、“性别”、“年龄”、“入学成 绩”等数据,为了处理数据的方便,常常需要把这些数据定义成一个新 的数据类型(如Student类型)。 Type Student
Xh As Sting
Xm As String Xb As String
Nl As Integer Score As Single End Type 3.3 常量和变量 3.3.1 常 量 在程序运行过程中,其值不能被改变的量称为常量。在VB中有三类 常量: • 普通常量 • 符号常量 • 系统常量。 一、普通常量 1. 整型常量 (1)整型(Integer):表示-32768至32767之间的整数 例如:10 110 20 (2)长整型(Long): 表示-2,147,483,648至2,147,483,647之间的整数 例如:长整型常数的书写: 23& 通常我们说的整型常量指的是十进制整数,但VB中可以使用八进制和 十六进制形式的整型常数,因此整型常数有如下三种形式: 1)十进制整数。如125,0,-89。20 2)八进制整数。以&或&O(字母O)开头的整数是八进制整数,如 &O25表示八进制整数25,即(25)8 ,等于十进制数21。 3)十六进制。以&H开头的整数是十六进制整数,如&H25表示十六进 制整数25,即(25)16 ,等于十进制数37。VB中的颜色数据常常用十六 进制整数表示。 2、实数 1) 单精度实型(Single):有效数为7位 表示-3.37E+38至3.37E+38之间的实数 2)双精度实型(Double):有效数为15位 常量的表示: 1)十进制小数形式。它是由正负号(+,-)、数字(0~9)和小数点 (.)或类型符号(!、#)组成,即±n.n,±n!或±n#,其中n是0~9的数 字。 例如0.123、.123、123.0、123!、123#等都是十进制小数形式。 2)指数形式。
VB系统提供了应用程序和控件的系统定义常数。它们存放于系统 的对象库中,在“对象浏览器”中的 Visual Basic(VB) 和 Visual Basic for applications(VBA)对象库中列举了 Visual Basic 的常数
例如,要将文本框Text1的前景颜色设置为红色,可以使用下面的语 句:
"100" + 123
' 结果为 223
"100" + "123"
' 结果为 100123
" Abc" + "123"
' 出错
" 100" & 123
' 结果为 100123
100 & 123
' 结果为 100123
" Abc" & "123" ' 结果为 Abc123
" Abc" & 123
' 结果为 Abc123
Print "Sum="; Sum End Sub 3.强制显式声明——Option Explicit语句 良好的编程习惯都应该是“先声明变量,后使用变量”,这样做可以提高 程序的效率,同时也使程序易于调试。Visual Basic 中可以强制显式声 明,可以在窗体模块、标准模块和类模块的通用声明段中加入语句:
1. 以字母或汉字开头,后可跟字母、数字或下划线组成,长度小于 等于40个字符;
2. 不能使用VB中的关键字; 3. VB中不区分变量名的大小写. 4. 为了增加程序的可读性,可在变量名前加一个缩写的前缀来表明 该变量的数据类型。
例如:strAbc, (字符串变量) iCount, (整型变量) dblx, (双精度变量) sYz (单精度变量)
True =
等于 "This"= "That"
False <>
不等于
"This"<> "That"
True
Like
字符串匹配
"This" Like "*is"
True
Is
对象比较
关系运算的规则如下: (1)当两个操作式均为数值型,按数值大小比较。 (2)字符串比较,则按字符的ASCII码值从左到右一一比较,直到出现
一种在字面上可被认作日期和时间的字符,只要用号码符“#”括起 来,都可以作为日期型数值常量。
例:#09/02/99#、#January 4,1989#,#2002-5-4 14:30:00 PM#都是合法 的日期型常量。
说明:当以数值表示日期数据时,整数部分代表日期,而小数部分 代表时间;例如1表示1899年12月31日。大于1的整数表示该日期以后的 日期,0和小于0的整数表示该日期以前的日期。 二、符号常量
Option Explicit 3.4 运算符和表达式 一. 运算符 1. 算术运算符(均是双目运算,ia=3) 例:5+10 mod 10 \ 9 / 3 +2 ^2 结果是:
2. 字符串运算符与字符 。 功能是字符串连接
例如:
"ABCD" + "EFGHI"
' 结果为:ABCDEFGHI
1.一个日期型数据可以相减: DateB-DateA 结果是一个数值型整数(两个日期相差的天数)。 例如:#05/08/2002# - #05/01/2002# 其结果为数值:7 2.一个日期型数据(DateA)与一数值数据(N)可作加法运算: DateA+N 其结果仍是一个日期型数据。 例如:#05/01/2002# +7 其结果为日期型数据:#05/08/2002# 3.一个日期型数据(DateA)与一数值数据(N)可作减法运算: DateA-N 其结果仍是一个日期型数据。 例如:#05/08/2002# - 7 其结果为日期型数据:#05/01/2002# 3.4.6 运算符的执行顺序 表达式中出现了多种不同类型的运算符时,其运算符优先级如下:
“ VB ” & “程序设计教程” ' 结果为:VB程序设计教程
说明:当连接符两旁的操作量都为字符串时,上述两个连接符等价。它
们区别是:
+(连接运算):两个操作数均应为字符串类型;
&(连接运算):两个操作数既可为字符型也可为数值型,当是数值
型时,系统自动先将其转换为数字字符,然后进行连接操作。
例:
结果为False。
VB中的关系运算符如下表所示。
运算符
含义
优先级
实例
结果
<
小于
所有关系运算优先级相同。低于算术运算的加“+”,减“-”运算,高于逻 辑非“Not”运算。
15+10<20 False <=
小于或等于 10<=20 True > 大于 10>20 False >=
大于或等于 "This">= "That"
第三周 数据类型、常量、变量及表达式 本节内容及要求: 1 熟悉VB程序中代码和语句书写规则; 2 掌握VB的数据类型; 3 掌握VB的 运算符和表达式的使用; 4 掌握常用内部函数的使用; 本章重点:
变量和常量的定义及使用、运算符和表达式的使用及常用内部函数 的使用。 本章难点:
数据类型、内部函数。 3.1 VB语言字符集及编码规则 一、VB的字符集 l 字母:大写英文字母A—Z;小写英文字母a—z。 l 数字:0一9; l 专用字符:共27个, 二、编码规则与约定 (一)、编码规则 1.VB代码中不区分字母的大小写。 2.在同一行上可以书写多条语句,但语句间要用冒号“:”分隔。 3.若一个语句行不能写下全部语句,或在特别需要时,可以换行。换 行时需在本行后加入续行符,1个空格加下划线“_”。 4.一行最多允许255个字符。 5.注释以Rem开头,也可以使用单引号“'”,注释内容可直接出现在语 句的后面。 (二)、 约定 1.为了提高程序的可读性,对于VB中的关键字其首字母大写,其余字 母小写 2. 注释有利于程序的维护和调试 Rem开始 或 单撇 ‘。 例如: ’ This is a VB
Text1.ForeColor=vbRed 这里的vbRed就是系统常量。这比直接使用16进制数来设置要直观 得多。
又如,窗口状态属性WindowsState可取0,1,2三个值,对应三种不同状 态(参见第二章表2-2所示)。
在程序中使用语句 Myform.WindowsState=vbMaxmized,将窗口极大 化,显然要比使用语句Myform.WindowsState=2 易于阅读和理解。 3.3.2 变 量 一.变量和常量的命名规则