精品课件-C++语言程序设计-第2章 数据类型和表达式

合集下载

面向对象程序设计C第2章-数据类型和表达式.ppt

面向对象程序设计C第2章-数据类型和表达式.ppt

第2章 数据类型和表达式
2.3 常量与变量
2.变量的定义
变量在使用之前必须先定义,要声明自己的数据类型、存储类型。
变量的定义格式为:
数据类型 变量名1,变量名2,…,变量n;
例如:
int iSum, iLength, x, y; //定义4个整型变量iSum,iLength,x,y
char ch;
第2章 数据类型和表达式
2.2 基本数据类型
C++ 语 言 的 数 据 类 型 分 为 基 本 数 据 类型、构造数据类型和引用类型,如图 2-1所示。基本数据类型是C++系统内部 的数据类型,构造类型和引用类型都是 由基本数据类型建立起来的。
图2-1 C++的数据类型
目录页
第2章 数据类型和表达式
字节 4 4 2 2 4 4
数值范围 -2147483648~2147483647 0~4294967295 -32768~32767 0~65535 -2147483648~2147483647 0~4294967295
第2章 数据类型和表达式
2.2 基本数据类型
目录页
2.整型数据在内存中的存储形式 整型数据是以二进制数补码的形式存储的。对有符号数据,则存储单元的最高位为符号位,1表 示负数,0 表示正数。对无符号数据,则没有符号位,所有的存储单元均为数据位。假设用32个二进 制位(bit)存放一个int型数据,则有符号数据和无符号数据在内存中占用存储单元的情况如图2-2所 示。
表2-1
C++关键字
auto default explicit goto namespace register struct try while

C语言程序设计第2章基本数据类型、运算符与表达式简明教程PPT课件

C语言程序设计第2章基本数据类型、运算符与表达式简明教程PPT课件
第2章
基本数据类型、运算符与表达式
学习的意义 最终目的是:用C语言编写程序来
解决实际问题! 程序是什么?
程序是解决某种问题的一组指令的有序集合。 结论:学好C语言首先 著名计算机科学家沃思(Nikiklaus Wirth)提 就必须十分了解 C 语言 出一个公式: 的数据类型、运算符 程序 = 数据结构 + 算法
2.2 常量和变量
3. 变量
• 定义:在程序运行过程中其值可以改变的量
– 先定义,后使用 –格式:数据类型 变量名1[=初值1][, 变量名2[=初值2]…]
–举例:int a, b=3;
float radius = 2.5, area;
• 常变量: C99标准中新增的类型,其作用是限制所定
义的变量值不能被修改。 • 格式: const 数据类型 变量名1=初值1[,变量名2=初 值2]…]
2.3 整型数据
1. 整型常量
• 定义:也称为“整数”。 • 分类: (1) 十进制整数:以非0开头的数,如123、-97、+100
(2) 八进制整数:以0开头的数,如031、067。
(3) 十六进制整数:以0X或0x开头的数,如0x12345。 • 可在整型常数后面添加一个L或l字母,其作用是强制 性地用长整型数来表示,如45L、067L、0xAF9l等。 • C语言中不能直接表示二进制数。如果需要用到二进制
与表达式。
对数据的描述。 在C语言中,体 现为数据类型的 描述!
对数据处理的描述。 是为解决一个问题而 采取的方法和步骤, 是程序的灵魂!
<<数据结构>>
C语言程序设计
<<算法设计与分析>>

《C语言程序设计》数据类型、运算符和表达式 ppt课件

《C语言程序设计》数据类型、运算符和表达式  ppt课件
C语言允许字符和整数之间进行运算
ppt课件
34
5.4 字符串常量
字符常量: 单引号括起来的一个字符。 字符串常量:双引号括起来的字符序列 (0~N个字符)。如: "How do you do.", "CHINA", "a", "$123.45" 字符串常量在内存中的存放: 每一个字符均以其ASCII码存放,且最后添加一
17
注意:
·可在整型常数后添加一个"L"或"l"字母表示该数为 长整型数,如22L, 0773L, 0Xae4l。
·另外, 所有整数的缺省类型是int,可在整型常数 后添加一个"L"或"l"字母表示该数为长整型数, 如 22L,0773L, 0Xae4l。
·若加上一个"u"或"U"字母表示该数为无符号整型数, 如27u, 0400u, 0xb8000000u。
ppt课件
36
5.5 字符与整型的相互转换
main( ) { char c1,c2;
c1=’a’; c2=’b’; printf (“c1=%c,c2=%c \n”,c1,c2); printf (“c1=%d,c2=%d \n”,c1,c2); } /*问题:结果如何*/
ppt课件
37
六、变量赋初值
ppt课件
14
三、整型数据
ppt课件
15
3.1.整型常量
整型常量即整常数按不同的进制区分, 整型常数 有三种表示方法:
十进制数: 以非0开始的数 如:220, -560, 45900 八进制数: 以0开始的数 如:06; 0106, 05788 十六进制数: 以0X或0x开始的数 如:0X0D, 0XFF, 0x4e

C语言讲解第二章 基本数据类型运算符及表达式PPT课件

C语言讲解第二章 基本数据类型运算符及表达式PPT课件
第二章 数据类型、运算符与表达式
2.1 C语言的基本数据类型
著名计算机科学家沃思提出: 程序=数据结构+算法
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
2.1 C语言的基本数据类型
举 一个例子:以考生各科成绩及总分排队问 题为例子。
{ int num, total; num=10; total=num*PRICE; printf("total=%d",total);
}
显示结果: total=300
当开始编译前,系统先将程序中所有的PRICE 这个单词换成30,再进行编译(翻译成二进制)。
21
2.2.3 符号常量
例:#include<stdio.h> #define PI 3.14 #define R 10.0-7.0*PI void main() { float s; s=PI*R; printf(“s=%f\n”,s); }
则若写成 student=30;
即未定义, 编译时会出错。
6
2.1 C语言的基本数据类型
C数据类型丰富,分为: 整型
基本类型
字符型 实型
枚举
单精度 双精度
构造类型 指针类型 空类型
数组 结构体 共用体
数据有常量、变 量之分,均为其 中一种类型。
7
基本数据类型
关键字
所占位数
取值范围
int short long unsigned int
成绩的存放 ––– 以数组形式 排队方法 –––– 算法
所以,存放数据的方式直接反映了一种语言的 数据表达能力。

C语言数据类型ppt课件

C语言数据类型ppt课件
21
2.2 常量与变量
(3)整型数据在内存中的存放形式
int x; x=10; 则变量x的值10在内存中的存放形式:
int x;
x=-10; 则变量x的值10在内存中的存放形式:
22
2.2 常量与变量
(4)整型数据的溢出
例2-2 整型数据的溢出问题
#include <stdio.h>
int main()
\r
<
\a
\‘
回车 响铃 单引号
\ddd 3位8进制数代表的字符
转义字符 \t \b \f \\ \“ \xhh
含义 水平制表 退格 换页 反斜线 双引号 2位16进制数代表的字符
12
2.2 常量与变量
如 ‘\101’ -----------‘A’ ‘\012’ -----------’\n’ ‘\376’ -----------’’ ‘\x61’ -----------’a’ ‘\060’ -----------’0’
unsigned short。 ⅲ. 无符号长整型:类型说明符为
unsigned long。
20
2.2 常量与变量
(2)整型变量的定义与使用
例2-1 整型变量的使用
#include <stdio.h> int main() {
int x,y,z; x=10;y=20; z=x+y; printf(“x+y=%d\n”,z); return 0; } 输出结果:x+y=30
说明:数据类型所占字节数随机器硬件不同而不同, 上表以IBM PC机为例。
4
2.2 常量与变量
• 数据是程序的处理对象 • C语言将数据分为常量与变量

c语言第二章数据类型、运算符及表达式课件

c语言第二章数据类型、运算符及表达式课件

30/96
现场演示例2.3 在TC和VC、CB下的运行结果
# include < stdio. h>
main()
{
printf("Data type
Number of bytes\n");
printf("------------ ---------------------\n");
printf("char
2精2选/课10件/16 ro gra
29/96
sizeof到底是什么?
1 C语言的关键字,并非函数 – 计算类型占用的字节数
1 两种语法形式 sizeof (类型)
– 结果为类型占用的字节数
sizeof (表达式)
– 结果为表达式值所属类型占用的字节数
一般都使用sizeof (变量名)
2精2选/课10件/16mming ro gra
1 long
– long int,简写为long,长整数,4个字节 – long double,长双精度 (高精度) 浮点数,10个字节
1 unsigned – 用来修饰char、int、short和long – 无符号整数 (正整数和0)
2精2选/课10件/16 ro gra
22/96
不同类型取值范围不同

小蛇能吞 下大象吗

2精C02选P3r/课1o0g件/r1a6mming
typeoverflow.c26/96
何谓类型溢出(Overflow) ?
1 生活中的例子: – 身份证号码中的出生年 – 阿利亚娜号火箭发射失败
1 现象与危害:
– 溢出后的数值是可预料的,但不同平台会有所不同 – 当程序从高位计算机向低位计算机移植 (比如从64位

2C语言的基本数据类型与表达式精品PPT课件

2C语言的基本数据类型与表达式精品PPT课件

(2010.3)以下C语言用户标识符中,不合法
的是
D
A)_1
B)AaBc
C)a_b
D)a-b
12.以下选项中不合法的标识符是 C A)print B)FOR C)&a D)_00
(2009.3) 11.以下选项中合法的标识符是 C A)1_1 B)1-1 C)_11 D)1_ _
2.2 C语言的基本数据类型
第2章 C语言的基本数据类型 与表达式
2.1 C语言字符集、标识符与关键字
2.1.1 C语言字符集
号,具包体括归英纳文如字下母:、阿+拉伯-数字*以及/ 其他%一+些+符--
英文字母:大小写各2<6个>,共=52个>= <= == !=
阿拉伯数字:0-9,共!10个||
& &
^
~
|
&
下划线:_
<< >> () [ ] { } \ “
保留字:一些关键字,被明文规定不许挪作它用,叫
str保uct留字。switch
typedef union
void volatile unsigned while
C语言中,所有的关键字都是保留字,所以这两个词可
以混用。
课堂提问: ✓ 标识符、关键字、保留字有什么不同? ✓ 以下标识符哪些是合法的标识符? _22A,lea_1,avg3,day,ABCde43xyw8 ,M.J.YORK,$_238,#xy,a*b,8Tea
double:双精度型,近似表示更大实数,在MS DOS上,每个浮点型变量分配 64 bit 存储空间。双 精度型都是有符号的,可表示数值范围分为三段:- 10308 至 -10-308, 0, 10-308 至 10308。数值都先化成 指数,再用二进制存储。15 位有效数字。 例如:double x, y; 等。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【例2.2】 实型数据的舍入误差。 #include "stdio.h" void main() { float a,b,c,d; a=12345.6789e3; b=12345.6784e3; c=a+10;/*理论值应是12345688.900000*/ d=b+10;/*理论值应是12345688.400000*/ printf("c=%f\n", c); /*实型变量只能保证的有效数字是7位有效数字,运行结果 是理论结果四舍五入得到的*/ printf("d=%f\n", d); }
方式
*p = a + b; …
●变量的地址称为} 变量的指针

直接将变量 a、b 的值
}
取出,相加后存入变量 c
c
利用变量名存取数据 的方式称为“直接存取 ”方式。
5 2000
2001 3
2002
2003 8
2004
2005
2.4.1指针和指针变量的概念
C 语言还
提供了对内 void main()
存单元的
{int a=5,b=3,c,*p;
“间接存取” p = &c;
|-1.7E-308~1.7E+308|
实数类型
3. 浮点数的表示形式 在C语言中,实数表示只采用十进制。它有二种形式: 十 进制数形式和指数形式。 (1)十进制数形式。由整数、小数部分和小数点组成,整数 和小数都是十进制形式。例如,0.123,-125.46,.78, 80.0等都是合法形式。 (2)指数形式。由尾数、指数符号e或E和指数组成,尾数是 小数点左边有且只有一位非零数字的实数。e或E前面必须 有数字,e或E后面必须是整数。指数形式用于表示较大或 者较小的实数。
2.3常量与变量
符号常数是用标识符表示的常数,它具有变量的外表和 常量的内涵。
用#define定义的符号常数没有类型和值的含义。在预编 译时由编译系统将宏名用宏体替换。 define是编译预处 理命令,不属于C语言关键字。
用const定义的符号常数既有值又有类型的含义。该定义 是在编译阶段完成的。
整数类型
2. 整型数据的存储与取值范围
表2.2 Visual C++ 6.0 环境中整型数据
数据类型
占用字节 二属进性制表位长度
值域

int
4
32
-2147483648~2147483647
short [int]
2
16
-32768~32767
long [int]
4
32
-2147483648~2147483647
数据类型 构造类型 数组类型([ ]) 结构体类型(struct) 共用体类型(union)
指针类型( ) 空类型(void)
整数类型
整型数就是通常使用的整数,分为带符号整数和无符号整数 两大类。 1. 基本类型定义
类型说明符:int 例如,int a,b,c;
说明变量a,b,c被同时定义为基本整型数据类型。
图2.3 "hello"在计算机中的存储示意图
2.3常量与变量
2.3.1常量 常量 程序运行过程中不能被改变的量。 整数在计算机中是准确表示的,可以用十进制、八进制
和十六进制数表示。当用八进制数表示时,第一位数字 前面必须加0;当用十六进制数表示时,第一位数字前而 必须加0x:无符号整数的末尾必须加字母u或U;长整数 的末尾必须加字母I或L。 字符型常数是用单引号括住的单个字符。用转义字符表 示不可显示字符。转义字符以“\”开头,后跟一个特 定的字母或八进制数或十六进制数表示的ASCII代码值。
运行结果 c=12345689.000000 d=12345688.000000
5. 变量的初始化
【例2.3】计算字符'B'与整型数据20的和。
#include "stdio.h"
void main()
{ char a; /* 说明a为字符型变量 */
int b;
/* 说明b为整型变量 */
a='B';
/* 为a赋字符常量'B' */
b=a+20; /* 计算66+20并赋值给字符变量b */
printf("%c,%d,%c,%d\n",a,a,b,b);
/* 分别以字符型和整型两种格式输出a、b */
}
程序运行的输出结果如下: B,66,V,86
2.4 指针和指针变量
2.4.1 指针和指针变量的概念
换页(formfeed) 退格(backspace) 水平制表(horizontal tab) 反斜线(backslash) 单引号(single quotation marks) 1到3位8进制数所代 表的字符
\0 换行(newline) \f 回车(carriage return) \b 响铃(bell) \t 垂直制表(vertical tab)
2.3.2 变量
1. 变量的有关概念 在程序运行过程中,其值改变的数据,称为变量,变量用标
识符表示,称为变量名。 变量必须“先定义后使用” 系统为变量分配存储单元,存储变量的值。 编写程序时通过变量名来存、取变量值。
例如: 有变量x 它的值是98
变量名 x
98
变量值
为变量分配的存储 单元
2. 变量定义
注意 (1)C语言中标识符严格区分大小写
(2)ANSI C标准规定标识符的长度可达31个字符 (3)标识符命名应“见名知义”; (4)变量名都要“先定义,后使用”。
关键字
ANSI C定义的关键字共32个,根据关键字的作用,可将其 分为数据类型关键字、控制语句关键字、存储类型关键字 和其它关键字四类
变量定义的一般格式:
【类型修饰符】数据类型 变量表; 例如:int i, j; long k, m; float x,y; char ch1,ch2;
• 必须使用合法的标识符作变量名 • 不能使用关键字为变量命名 • 分号是语句的组成部分 • C语言的变量名和它的类型无关; • 在函数或复合语句中必须把要定义的变量全部定义,即不
Microsoft C在ANSI C基础上扩展的关键字有(19个)
注释符
C语言的注释符是以 “/*”开头,并以 “*/”结尾,其 间的内容为注释,一般出现在程序语句行之后,用来帮助 阅读程序。
2.2数据类型 基本整型 长整型
整型 短整型 无符号整型 单精度型(float)
基本类型 实型 双精度型(double) 枚举类型(enum) 字符型(char)
5. 变量的初始化
【例2.1】 整型数据的溢出。 #include "stdio.h" void main() { short int a,b; a=32767; b=a+1; printf("a:%d,b:%d" , a , b); }
运行结果为: a:32767, b:-32768
5. 变量的初始化
整数类型
3. 整型数据的表示形式 十进制整数:254,-127,0都是正确的,而0291(不能有前
导0)、23D (含有非十进制数码)都是非法的; 八进制整数:021,-017都是正确的,它们分别代表十进制
整数17,-15,而256(无前缀0)、03A2(包含了非八进制数码 )是非法的; 十六进制整数:0x12,-0x1F都是正确的,它们分别代表十 进制整数18,31, 而5A (无前缀0x)、0x3H (含有非十六进 制数码)是非法的。
为了便于C程序判断字符串是否结束,系统对每个字符
串数据存储时都在末尾添加一个结束标志——即ASCII码
Байду номын сангаас
值为0的空操作符'\0',它既不引起任何动作也不会显示
输出,所以存储一个字符串的字节数应该是字符串的长度
加1。
字符类型
例如"hello"在计算机中表示形式如图2.3所示:
'h' 'e' 'l' 'l' 'o' '\0' 104 101 108 108 111 0
实数类型
1. 基本类型定义 类型说明符:float(单精度型),double(双精度型), long double(长双精度型) 2. 实数存储与取值范围 在计算机中,实数是以浮点数形式存储的,所以通常将单精 度实数称为浮点数。例如单精度实型数据在计算机中的存放 形式见图2.1所示。其中,小数部分一般都采用规格化的数 据形式。
[signed] int
2
16
同int
[signed] short [int]
2
16
同short
[signed] long [int]
4
32
同long
unsigned [int]
2
16
unsigned short [int] 2
16
unsigned long [int]
4
32
0~65535 同unsigned int 0~4294967295
\\ \'
\ddd
问号(question mark)
双引号(double quotation marks)
1到2位16进制数所代 表的字符
符号 \n \r \a \v
\? \”
\xhh
标识符
C语言规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、 下划线( _ )组成的字符串,并且第一个字符必须是字母或下 划线。
5. 变量的初始化
相关文档
最新文档