顺序结构
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
a xyz bc A N ABC
33
运行结果:
(4) 字符串常量
一对双引号括起来的字符序列。如:
"How do you do. " 例: void main() { printf("This is my first program"); C中无字符串变量 printf("in C/C++.\n"); } 输出结果为 This is my first program in C/C++.
字符常量是用单引号括起来的一个字符,如‘A’、
‘a’、‘?’、‘0’等。
字符常量的值的是机器字符集中字符的数字值,
如字符常量'0',其ASCII为48,所以存储的实际 内容为48。
30
转 义 字 符
反斜杠后跟一个字符或数字 字符常量,代表一个字符
'\n' '\101' '\x41' 'A'
9
数据类型所占字节跟编译系统有关 在c语言中可以通过sizeof()函数得到该信息
例:获得int类型所占字节 #include <stdio.h> void main() { printf("%d\n",sizeof(int)); }
10
取值范围确定
以unsigned short类型为例 unsigned Short类型为2字节 (16位) 最大取值的二进制表示为:
32767 + 1 = 32768 ? 1000 0000 0000 000 = -32768
-32768 - 1 = -32769 ? 0111 1111 1111 1111 = 32767
15
2.2 数据类型
(2)浮点类型
float型数据在内存中占用4个字节(32位),提 供7位有效数字,可能的取值范围在10-38~ 1038; double型数据占8个字节,提供15~16位有 效数据,可能的取值约10-308~10308。
数据的输入和输出
类型转换 表达式(算术和赋值表达式) 常用数学函数
3
教材参考章节
第六章 6.1-6.4,6.5.1-6.5.2 第二章 2.1-2.2,2.3.4-2.3.5
4
复习: 程序的基本结构
预编译命令 主程序区 #include<stdio.h> void main() { } int add(int x,int y) { }
short int(或short) long int(或long) unsigned int unsigned short unsigned long
短整型 长整型 无符号整型 无符号短整型 无符号长整型
8
2.2 数据类型
(1) 整型
数据类型最小取值范围
数据类型 int short long unsigned int unsigned short unsigned long 所占位数 32 16 32 32 16 32 最小取值范围 -21亿~21亿 -32768~32767 -21亿~21亿 0~42亿 0~65535 0~42亿
12
数值的表示方法-原码 反码 补码
正数的原码、反码和补码相同
1 的补码 0 000 0000 0000 0001 …… 32767 的补码 0 111 1111 1111 1111 (215-1,2个
-1
原码 1 000 0000 0000 0001
原码取反 反码+1
-32768 = -32767-1
补码 1 000 0000 0000 0000
(2个字节的存储单元能表示的最小负数)
14
-32768
-1 0 1
32767
32767 0111 1111 1111 1111 …… 1 0000 0000 0000 0001 0 0000 0000 0000 0000 -1 1111 1111 1111 1111 -2 1111 1111 1111 1110 …… -32767 1000 0000 0000 0001 -32768 1000 0000 0000 0000
解释:ch中的值是
‘B‟
19
2.2 数据类型
2.变量
变量是指程序运行过程中可以发生变化的量 C中的变量必须先定义后使用 变量应该先赋值,后引用 定义时注意两点
用关键字指明数据类型 为变量起名
起名规则为:由字母数字下划线组成,以字母或下划
线开头,不能使用c中的关键字,比如int等。
34
(5) 符号常量
用一个标识符代表一个常量,称符号常量。 /*程序名:2_5.cpp*/ /*功能:符号常量的使用,计算圆的周长和面积*/ #include<stdio.h> #define PI 3.14159 /*定义PI代表串3.14159*/ void main( ) 使用符号常量 { 的益处: (1)程序书写 float r, s, area; 简便 scanf("%f", &r); (2)程序修改 s = 2 * PI * r; 简便 area = PI * r * r; printf("s=%7.2f, area=%7.2f" , s , area); 35 }
在程序运行中其值不可以改变。
在程序运行中其存储的值可以改变。
6
2.2 数据类型
问题之二:如何规定数据的存储空间
和操作规则?
为数据指明所属数据类型
常量通过书写方式来指明其数据类型
变量通过关键字来指明其数据类型
7
2.2 数据类型
1.基本数据类型
int char 整型 字符型 float 单精度浮点型 double 双精度浮点型
18
字符型数据与整型数据通用示例
例一
Int my;
my=„a‟
解释:my中的值是97
主要应用是char型数据做 加减运算,作用是由当 前字母获得其他字母
例如:char ch=„a‟;
ch=ch-32; 解释:经过上面两步操 作,ch中得到的是‘A‟
例二
char ch; ch=66
24
(4)变量的作用
存放数据
待处理的
中间数据
最后结果
25
2.2 数据类型
3.常量
(1) 整型常量
整型常量即整数。
整型常量可以使用三种形式表示:十进制数、八
进制数、十六进制数。每种进制形式的数据都有 特殊标记。
十进制数。如128、-60、0。 八进制数。以0开始的数据是八进制数。如0123代表
2.1 程序的基本结构
程序说明部分 /*程序名:2_3.cpp*/ /*功能:计算两个整数和并输出结果*/
函数定义区
注意书写程序的风格
5
计算机语言中数据的描述
数据描述需要解决的两个问题
问题之一:有哪几类数据? 例:s=3.14159*r*r
3.14159 常量
r 变量
2.2 数据类型
顺序结构程序设计
北京交通大学计算机学院 计算机程序设计基础课程组
1
教学目标
了解结构化程序的基本结构 掌握基本的数据类型 会定义变量并了解变量在内存的存放 会使用算术和赋值运算符进行计算 能使用输入输出函数输入输出数据,编写 出简单的程序
2
教学内容
数据的存储和基本数据类型
常量和变量
反码 1 111 1111 1111 1110 补码 1 111 1111 1111 1111
原码取反 反码+1
13
原码 反码 补码
32767
补码
0 111 1111 1111 1111
-32767
原码 1 111 1111 1111 1111 反码 1 000 0000 0000 0000 补码 1 000 0000 0000 0001
22
2.2 数据类型
(2)变量定义的含义
定义变量,编译系统会在编译时按照数据类 型为其分配相应的内存空间,并将该内存空 间命名为变量名 在程序中操作变量名即为操作该存储空间 比如:int i1,i2; 4 5 i1=4; i1 i2 i2=5 ;
23
(3)变量的赋值方法
变量赋初值:在定义变量时对它赋值 int a = 5, b = 3; 赋值表达式 int a, b; a = 5; b = 3; 输入 int a, b; scanf("%d%d", &a, &b);
7(二进制形式)用一字节
考虑按double类型存放的情况?
并不是所有的实数都能在计算机中精确表示
17
2.2 数据类型
(3)字符型
字符型数据存储时占用8位,它实际存储的是字符 对应的ASCII码(Americal Standard Code for Information Interchange美国标准信息交换码)。 如一个char型数据’A’,其ASCII码为65,故实际 存储的内容是65,二进制形式为0100 0001 。 字符型数据与整型数据可以通用,字符型数据所有 的性质与一字节整型量相同。
16
浮点型数据的存储符合IEEE浮点数格式,如float 型数据,1位用于符号,8位用于指数,23位用于 基数。 例:实数123.4,二进制形式1111011.0110011
表示成0.11110110110011*27 按float型存放:
0.11110110110011用3字节
八进制数123,即十进制数83。
十六进制数。以0x开始的数是十六进制数。如-0x128
代表十六进制数-128,即十进制数-296。
26
整型常量的写法举例
123 = 01111011 (B) 二进制 =173 (O) 八进制 =7B (X) 十六进制 123 0173 0x7b 16 020 0x10 10 012 0XA 10 010 0x10
21
变量的定义与使用
变量必须先定义,后使用。 应该先赋值,后引用 #include <stdio.h> int main(void) 一个变量名只能定义一次 { 变量一般都定义在程序的头上 int celsius, fahr;
不能定义在程序的中间或后面
fahr = 100; celsius = 5 * (fahr - 32) / 9; printf("fahr = %d, celsius = %d\n", fahr, celsius); return 0; }
所有字符都可以用转义字符表示
31
例:转义字符‘’输出
#include <stdio.h> void main() { printf("\‟hello\‟"); } 运行结果:‟hello‟
32
/*功能:使用转义字符控制数据的输出*/
#include <stdio.h> void main() { char c1 = 'A',c2 ='N'; printf("a\tbc\tABC\n"); printf("xyz\t%c %c",c1,c2); }
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
65535
最小取值的二进制表示为:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0
11
以short类型为例,占两个字节
1 000 0001 1000 0001 0 000 0001 1000 0001
符号位 1:负数 0:正数
20
2.2 数据类型
(1)变量定义 变量定义语法
int a , b , c ; float width ; double z; char c1 , c2; /*指定a,b,c为整型变量*/ /*指定width为单精度实型量*/ /*指定z为双精度实型变量*/ /*指定c1,c2为字符型变量*/
不能超出整型数据的取值范围 比长整型数还要大的数只能用实数来表示
27
整数的类型
判断整数的类型 整数后的字母后缀
123L 123U
long unsigned
123LU unsigned long
28
(2) 实型常量
实型常量又称实数或浮点数。 实数有两种表示形式: 十进制形式。包括整数部分、小数点、小数部分,当 整数或小数部分为0时可以省略,但小数点不能省略。 如128.0、.128、128.5、128.、0.0等都是十进制数形 式。
指数形式。包括尾数、字符e(或E)、指数。它适用于
表示较大或较小的数。e之前必须有数字,且e后面的 指数必须为整数。如128e2或128E2都代表128×102。
如果实型常量后缀是“f”或“F”,则被当成float型,
否则,C语言编译系统总是将实型常量处理成double 的。
29
(3) 字符常量
33
运行结果:
(4) 字符串常量
一对双引号括起来的字符序列。如:
"How do you do. " 例: void main() { printf("This is my first program"); C中无字符串变量 printf("in C/C++.\n"); } 输出结果为 This is my first program in C/C++.
字符常量是用单引号括起来的一个字符,如‘A’、
‘a’、‘?’、‘0’等。
字符常量的值的是机器字符集中字符的数字值,
如字符常量'0',其ASCII为48,所以存储的实际 内容为48。
30
转 义 字 符
反斜杠后跟一个字符或数字 字符常量,代表一个字符
'\n' '\101' '\x41' 'A'
9
数据类型所占字节跟编译系统有关 在c语言中可以通过sizeof()函数得到该信息
例:获得int类型所占字节 #include <stdio.h> void main() { printf("%d\n",sizeof(int)); }
10
取值范围确定
以unsigned short类型为例 unsigned Short类型为2字节 (16位) 最大取值的二进制表示为:
32767 + 1 = 32768 ? 1000 0000 0000 000 = -32768
-32768 - 1 = -32769 ? 0111 1111 1111 1111 = 32767
15
2.2 数据类型
(2)浮点类型
float型数据在内存中占用4个字节(32位),提 供7位有效数字,可能的取值范围在10-38~ 1038; double型数据占8个字节,提供15~16位有 效数据,可能的取值约10-308~10308。
数据的输入和输出
类型转换 表达式(算术和赋值表达式) 常用数学函数
3
教材参考章节
第六章 6.1-6.4,6.5.1-6.5.2 第二章 2.1-2.2,2.3.4-2.3.5
4
复习: 程序的基本结构
预编译命令 主程序区 #include<stdio.h> void main() { } int add(int x,int y) { }
short int(或short) long int(或long) unsigned int unsigned short unsigned long
短整型 长整型 无符号整型 无符号短整型 无符号长整型
8
2.2 数据类型
(1) 整型
数据类型最小取值范围
数据类型 int short long unsigned int unsigned short unsigned long 所占位数 32 16 32 32 16 32 最小取值范围 -21亿~21亿 -32768~32767 -21亿~21亿 0~42亿 0~65535 0~42亿
12
数值的表示方法-原码 反码 补码
正数的原码、反码和补码相同
1 的补码 0 000 0000 0000 0001 …… 32767 的补码 0 111 1111 1111 1111 (215-1,2个
-1
原码 1 000 0000 0000 0001
原码取反 反码+1
-32768 = -32767-1
补码 1 000 0000 0000 0000
(2个字节的存储单元能表示的最小负数)
14
-32768
-1 0 1
32767
32767 0111 1111 1111 1111 …… 1 0000 0000 0000 0001 0 0000 0000 0000 0000 -1 1111 1111 1111 1111 -2 1111 1111 1111 1110 …… -32767 1000 0000 0000 0001 -32768 1000 0000 0000 0000
解释:ch中的值是
‘B‟
19
2.2 数据类型
2.变量
变量是指程序运行过程中可以发生变化的量 C中的变量必须先定义后使用 变量应该先赋值,后引用 定义时注意两点
用关键字指明数据类型 为变量起名
起名规则为:由字母数字下划线组成,以字母或下划
线开头,不能使用c中的关键字,比如int等。
34
(5) 符号常量
用一个标识符代表一个常量,称符号常量。 /*程序名:2_5.cpp*/ /*功能:符号常量的使用,计算圆的周长和面积*/ #include<stdio.h> #define PI 3.14159 /*定义PI代表串3.14159*/ void main( ) 使用符号常量 { 的益处: (1)程序书写 float r, s, area; 简便 scanf("%f", &r); (2)程序修改 s = 2 * PI * r; 简便 area = PI * r * r; printf("s=%7.2f, area=%7.2f" , s , area); 35 }
在程序运行中其值不可以改变。
在程序运行中其存储的值可以改变。
6
2.2 数据类型
问题之二:如何规定数据的存储空间
和操作规则?
为数据指明所属数据类型
常量通过书写方式来指明其数据类型
变量通过关键字来指明其数据类型
7
2.2 数据类型
1.基本数据类型
int char 整型 字符型 float 单精度浮点型 double 双精度浮点型
18
字符型数据与整型数据通用示例
例一
Int my;
my=„a‟
解释:my中的值是97
主要应用是char型数据做 加减运算,作用是由当 前字母获得其他字母
例如:char ch=„a‟;
ch=ch-32; 解释:经过上面两步操 作,ch中得到的是‘A‟
例二
char ch; ch=66
24
(4)变量的作用
存放数据
待处理的
中间数据
最后结果
25
2.2 数据类型
3.常量
(1) 整型常量
整型常量即整数。
整型常量可以使用三种形式表示:十进制数、八
进制数、十六进制数。每种进制形式的数据都有 特殊标记。
十进制数。如128、-60、0。 八进制数。以0开始的数据是八进制数。如0123代表
2.1 程序的基本结构
程序说明部分 /*程序名:2_3.cpp*/ /*功能:计算两个整数和并输出结果*/
函数定义区
注意书写程序的风格
5
计算机语言中数据的描述
数据描述需要解决的两个问题
问题之一:有哪几类数据? 例:s=3.14159*r*r
3.14159 常量
r 变量
2.2 数据类型
顺序结构程序设计
北京交通大学计算机学院 计算机程序设计基础课程组
1
教学目标
了解结构化程序的基本结构 掌握基本的数据类型 会定义变量并了解变量在内存的存放 会使用算术和赋值运算符进行计算 能使用输入输出函数输入输出数据,编写 出简单的程序
2
教学内容
数据的存储和基本数据类型
常量和变量
反码 1 111 1111 1111 1110 补码 1 111 1111 1111 1111
原码取反 反码+1
13
原码 反码 补码
32767
补码
0 111 1111 1111 1111
-32767
原码 1 111 1111 1111 1111 反码 1 000 0000 0000 0000 补码 1 000 0000 0000 0001
22
2.2 数据类型
(2)变量定义的含义
定义变量,编译系统会在编译时按照数据类 型为其分配相应的内存空间,并将该内存空 间命名为变量名 在程序中操作变量名即为操作该存储空间 比如:int i1,i2; 4 5 i1=4; i1 i2 i2=5 ;
23
(3)变量的赋值方法
变量赋初值:在定义变量时对它赋值 int a = 5, b = 3; 赋值表达式 int a, b; a = 5; b = 3; 输入 int a, b; scanf("%d%d", &a, &b);
7(二进制形式)用一字节
考虑按double类型存放的情况?
并不是所有的实数都能在计算机中精确表示
17
2.2 数据类型
(3)字符型
字符型数据存储时占用8位,它实际存储的是字符 对应的ASCII码(Americal Standard Code for Information Interchange美国标准信息交换码)。 如一个char型数据’A’,其ASCII码为65,故实际 存储的内容是65,二进制形式为0100 0001 。 字符型数据与整型数据可以通用,字符型数据所有 的性质与一字节整型量相同。
16
浮点型数据的存储符合IEEE浮点数格式,如float 型数据,1位用于符号,8位用于指数,23位用于 基数。 例:实数123.4,二进制形式1111011.0110011
表示成0.11110110110011*27 按float型存放:
0.11110110110011用3字节
八进制数123,即十进制数83。
十六进制数。以0x开始的数是十六进制数。如-0x128
代表十六进制数-128,即十进制数-296。
26
整型常量的写法举例
123 = 01111011 (B) 二进制 =173 (O) 八进制 =7B (X) 十六进制 123 0173 0x7b 16 020 0x10 10 012 0XA 10 010 0x10
21
变量的定义与使用
变量必须先定义,后使用。 应该先赋值,后引用 #include <stdio.h> int main(void) 一个变量名只能定义一次 { 变量一般都定义在程序的头上 int celsius, fahr;
不能定义在程序的中间或后面
fahr = 100; celsius = 5 * (fahr - 32) / 9; printf("fahr = %d, celsius = %d\n", fahr, celsius); return 0; }
所有字符都可以用转义字符表示
31
例:转义字符‘’输出
#include <stdio.h> void main() { printf("\‟hello\‟"); } 运行结果:‟hello‟
32
/*功能:使用转义字符控制数据的输出*/
#include <stdio.h> void main() { char c1 = 'A',c2 ='N'; printf("a\tbc\tABC\n"); printf("xyz\t%c %c",c1,c2); }
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
65535
最小取值的二进制表示为:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0
11
以short类型为例,占两个字节
1 000 0001 1000 0001 0 000 0001 1000 0001
符号位 1:负数 0:正数
20
2.2 数据类型
(1)变量定义 变量定义语法
int a , b , c ; float width ; double z; char c1 , c2; /*指定a,b,c为整型变量*/ /*指定width为单精度实型量*/ /*指定z为双精度实型变量*/ /*指定c1,c2为字符型变量*/
不能超出整型数据的取值范围 比长整型数还要大的数只能用实数来表示
27
整数的类型
判断整数的类型 整数后的字母后缀
123L 123U
long unsigned
123LU unsigned long
28
(2) 实型常量
实型常量又称实数或浮点数。 实数有两种表示形式: 十进制形式。包括整数部分、小数点、小数部分,当 整数或小数部分为0时可以省略,但小数点不能省略。 如128.0、.128、128.5、128.、0.0等都是十进制数形 式。
指数形式。包括尾数、字符e(或E)、指数。它适用于
表示较大或较小的数。e之前必须有数字,且e后面的 指数必须为整数。如128e2或128E2都代表128×102。
如果实型常量后缀是“f”或“F”,则被当成float型,
否则,C语言编译系统总是将实型常量处理成double 的。
29
(3) 字符常量