C语言初级教程课件第2章数据类型运算符和表达式

合集下载

C语言教程课件第二章 数据类型、运算符和表达式

C语言教程课件第二章 数据类型、运算符和表达式

例 整型变量的定义与使用
#include <stdio.h> void main() { int a,b,c,d; /*指定a、b、c、d为整型变量*/ unsigned u; /*指定u为无符号整型变量*/ a=12;b=-24;u=10; c=a+u;d=b+u; printf("a+u=%d,b+u=%d\n",c,d); }
例 向字符变量赋以整数。 • 运行结果: #include <stdio.h> a b void main() 97 98 { char c1,c2; c1=97; c2=98; printf("%c %c\n",c1,c2); printf("%d %d\n",c1,c2); }
• 说明:在第4和第5行中,将整数97和98分别赋给c1和c2,它 的作用相当于以下两个赋值语句: c1='a';c2='b'; 因为'a'和'b'的ASCII码为97和98
• 字符型变量用来存放字符常量,注意只能放一个字符。 • 字符变量的定义形式如下:char c1,c2; • 在本函数中可以用下面语句对c1,c2赋值: c1='a';c2='b'; • 一个字符变量在内存中占一个字节; • 将一个字符常量放到一个字符变量中,是将该字符的 相应的ASCII代码放到存储单元中,这样使字符型数据 和整型数据之间可以通用。一个字符数据既可以以字 符形式输出,也可以以整数形式输出。
运行结果: total=300 例2.1 符号常量的使用 #define PRICE 30 #include <stdio.h> void main ( ) 说明:如再用赋值语句给PRICE赋值是错的 { PRICE=40;/*错误,不能给符号常量赋值*/ int num, total; num=10; total=num * PRICE; printf(″total=%d\n ″,total); } 说明: 程序中用#define命令行定义PRICE代表常量30,此后凡在 本文件中出现的PRICE都代表30,可以和常量一样进行运算

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++自学课件 第二章 数据类型、操作符和表达式

C语言&C++自学课件 第二章 数据类型、操作符和表达式

小数部分的位数决定了它的有效数字, 指数的位数决定了它的表示范围。 实型数据的舍入误差 数据超过有效位数,则产生误差
实型数据的舍入误差 数据超过有效位数,则产生误差 例: 浮点型数据的舍入误差 #include <stdio.h> void main( ) { float a; a= 123456.789e5; printf("%f \n",a); }
数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 可以进行的操作
§2.2 常量与变量
常量和符号常量
常量:程序运行过程中,其值不能被改变的量(常 数) 分类:直接常量、符号常量。 类型 示例 整型常量 12 、 0 、 -3 实型常量 字符常量 字符串常量 符号常量
4.6 、 -1.23 ‘a’ 、 ‘b’ “asd”、 “ ASD” PRICE 、 PAI

整型变量
整型数据在内存中的存放形式
数据在内存中以二进制补码形式存放 每一个整型变量在内存中占2个字节
10的原码 反码 补码 -10的原码 取绝对值 反码 补码
00 00 00 00 00 00 10 00 00 00 11 11 11 11
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 11 11 11 11 11 11
<
>
变量
例 变量的使用 main() 定义:其值可以改变的量。 { 变量应该有名字,并在内存中占据一定的存储单 int a; 元。 a=3; printf(“a=%d",a); } 定义格式:数据类型 变量名; 注意事项:(1)见名知意 (2)先定义后使用 (3)习惯上符号常量用大写,变量名用小 写,以示区别。

C语言课件 第02章 数据类型、运算符和表达式_1

C语言课件 第02章 数据类型、运算符和表达式_1

do double
else enum extern float
for
goto if int long register return short
signed sizeof static struct switch typedef union
unsigned void volatile while
标识符
128,(-32768~32767),系统自动认定它的类型为基本整 型 int,默认用2个字节保存并处理之;
32769(>32767),系统自动认定它的类型为long,默认用4 个字节保存并处理之。
z 如果要明确指出某整型常量的类型,可在其后加 上相应的后缀
128L或128l,长整型,系统将用4个字节保存并处理它; 32769U或32769u,无符号整型,系统将用2个字节保存并外 理它,最高位1解释为实际数值而不代表符号。 32769LU或32769lu,无符号长整型,系统将用4个字节保存 并处理它。
z 字符型
表示一个字符的ASCII码值,占用1个字节存储空 间。
C语言的基本数据类型(2/2)
类型 标识
char
名称 字符型
int
整型
float double
实型
双精度 实型
占用 字节数
1 2 4
8
取值范围
-27~(27-1) (-128 ~ 127) -215~(215-1) (-32768~32767)
z 非法标识符:M.D.John $123 3D64等
2.2 C的基本数据类型
数据类型的概念(1/2)
数据类型:一类数据的抽象表示
z数据类型是对数据值域、存储方式和可进行的 运算的描述。 z数据被分成不同的类型后,可以保护数据、便 于运算以及合理分配内存。

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位

C语言第02章 数据类型、运算符与表达式ppt课件

C语言第02章 数据类型、运算符与表达式ppt课件
1、整型、实型、字符型数据之间可以混合运 算
整型〔包括int,short,long〕和实型〔包括float,double〕数 据可以混合运算,另外字符型数据和整型数据可以通用,因此, 整型、实型、字符型数据之间可以混合运算。
例如,表达式10+'a'+1.5-8765.1234*'b'是合法的。
回到
回到
2.2常量与变量
首页
2.2、变量的定义 〔1〕变量是先定义,后使用。
定义一个变量需要提供两方面的信息:变量的名字和 类型
〔2〕定义格式 类型说明符 变量1, 变量2,…;
如 int number;
回到
2.3整 型 数 据
首页
1、整型常量的表示方法 〔1〕 十进制整常数。没有前缀 〔2〕 八进制整常数。以0作为前缀。 〔3〕 十六进制整常数。十六进制整常数的前 缀为0X或0x。
实型变量提供的有效数字是有限的
一个很大的数+一个很小的数,没有意义
回到
2.4实 型 数
首页
2、实型变量
【例2.8】 显示个人微机上不同类型变量所占的字节数
回到
2.5字符型数据
首页
1、字符常量 〔1〕定义 字符常量是用单引号〔' '〕括起来的一个字符。 例如,'a'、'='、'?'都是合法的字符常量。 〔2〕字符常量特点
回到
作业和实验习题
首页
作业:P41 2.3 2.4 2.7 2.9 2.11〔做在书 上〕 2.12
实验:
P20 例2.2 2.3
P23 例2.4
P24 例2.5
P27 例2.7

最新C语言初级教程课件-第2章-数据类型运算符和表达式PPT课件

最新C语言初级教程课件-第2章-数据类型运算符和表达式PPT课件

b = 123456.789e4;
printf("%f\n%f\n",a,b);
} 2021/4/17
14
数据在内存中的存储格式
整型 字符型 实型
阶码j
尾数S
阶码符号 阶码的数值 尾数符号 尾数的数值
2021/4/17
15
char型与int型之间的关系
小写字母转换为大写字母
#include <stdio.h> main() {
/*调用函数Add计算x和y相加之和*/
printf("sum = %d\n", sum); /*输出x和y相加之和*/
} 2021/4/17
3
2021/4/17
4
2021/4/17
5
2021/4/17
6
标识符命名
变量名
函数名
由英文字母、数字和下划线组成,但不可以是数字开头 ,大小写敏感
直观,见名知意,便于记忆和阅读
– 如:for语句所采用的循环变量习惯用i, j, k
2021/4/17
7
b, B, KB, MB, GB, TB
Megabyte(MB),中文叫法:兆 Kilobyte(KB),中文叫法: K Byte,中文叫法:字节 bit,中文叫法:位 Gigabyte(GB),中文叫法:G Terabyte(TB),中文叫法:T
– 最好使用英文单词或其组合 – 切忌使用汉语拼音 下划线和大小写通常用来增强可读性
UNIX 风格
– variablename – variable_name – VariableName, variableName
Windows 风格
不允许使用关键字作为标识符的名字
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
*/
int Add(int a, int b)
{
return (a + b);
}
/*主函数*/ main() {
int x, y, sum = 0;
printf("Input two integers:");
scanf("%d%d", &x, &y);
/*输入两个整型数x和y*/
sum = Add(x, y);
float eps = 1.0e-5;
2021/1/8
13
实型数据提供的有效数字位数
float型数据提供7位有效数字 double型数据提供16位有效数字 使用不当导致舍入误差
#include <stdio.h> main() {
float a; double b;
a = 123456.789e4;
"x"和’x’是不同的 <string.h>里定义了一系列专门的字符串处理函数
2021/1/8
21
枚举(Enumeration)常量
一个被遗忘的角色 从程序来窥其一斑
enum weeks {MON, TUE, WED, THU, FRI, SAT, SUN}; enum weeks today; enum response {no, yes, none}; enum response answer;
|| – 或运算:(a > b || b > c); a大于b,或者b大于c
! – 求反:( !a );如果a是0,结果非0;如果a是非0,结
果是0,但并不改变a的值
在计算逻辑表达式时,只有在必须执行下一个表达 式才能求解时,才求解该表达式(即并不是所有的 表达式都被求解)。
12
变量声明
使用变量的基本原则 – 变量必须先定义,后使用 – 所有变量必须在第一条可执行语句前定义
声明的顺序无关紧要 一条声明语句可声明若干个同类型的变量 声明变量,是初始化变量的最好时机
– 不被初始化的变量,其值为危险的随机数
char esc = 'a';
int i = 1;
int sum = 0;
– 两个字节保存一个汉字
GB编码
– 可以表示数字0~255
2021/1/8
9
基本数据类型
int – 整数,在目前绝大多数机器上占4个字节。
float – 单精度浮点数,一般是4个字节长。
double – 双精度浮点数,一般是8个字节长。
char – 字符,一般是1个字节长。 – 用来表示256个ASCII字符,或者0~255的整数。
2021/1/8
19
字符常数
转义字符 – 一些特殊字符(无法从键盘输入或者另有它用)用转义字
符表示
2021/1/8
20
字符串(String)常数
用双引号括住的由0个或多个字符组成的字符序列 – "I am a string" – ""表示空字符串 – 转义字符也可以在字符串中使用 – 引号只作为字符串开始和结束的标志 – C语言内部用’\0’表示字符串的结束 – 除注释外,是唯一可以出现中文的地方
/*调用函数Add计算x和y相加之和*/
printf("sum = %d\n", sum); /*输出x和y相加之和*/
} 2021/1/8
3
C程序常见符号分类
关键字(Keyword)
– 又称为保留字,C语言中预先规定的具有固定含义的一些单词
标识符(Identifier)
– 系统预定义标识符
– 用户自定义标识符
today = TUE; answer = yes;
if (answer == yes) printf("Today is Tuesday.\n");
else printf("Today is NOT Tuesday.\n");
2021/1/8
22
宏常量
宏常量
– 也称符号常量 – 一般采用大写字母表示 #define 标识符 字符串 – 不是语句,而是一种编译预处理命令 宏替换(Macro Substitulition)
正整数、0和负整数)。一般缺省都是有符号的,所以这个修饰符通 常省略
unsigned – 用来修饰char、int、short和long,说明他们是无符号的整数(
正整数和0)
2021/1/8
11
使用变量要注意
区分变量名和变量值的概念 不要对变量所占的内存空间字节数想当然
– 用sizeof获得变量或者数据类型的长度
202}1/1/8
16பைடு நூலகம்
常数(Constant)
整型常数 – 18、-31 – 长整型常量 123l、123L、123456l、123456L – 无符号型常量 123u、 123U
浮点常数 – 十进制小数形式 123.45、456.78 – 指数形式 1e-2、4.5e3 – 单精度实型常量 123.45f、 456.78F、1e-2f、4.5e3F – 长双精度型常量 123.45l、 456.78L、1e-2l、4.5e3L
C语言初级教程课件-第2章-数据类型运算符和 表达式
内容提要
基本数据类型; 常量和变量; 标识符命名; 常用运算符和表达式; 运算符的优先级与结合性
2021/1/8
2
一个简单的C程序例子
#include <stdio.h>
/*函数功能:计算两个整数相加之和 入口参数:整型数据a和b 返回值: 整型数a和b之和
2021/1/8
7
b, B, KB, MB, GB, TB
Megabyte(MB),中文叫法:兆 Kilobyte(KB),中文叫法: K Byte,中文叫法:字节 bit,中文叫法:位 Gigabyte(GB),中文叫法:G Terabyte(TB),中文叫法:T
1 TB == 1,024 GB
b = 123456.789e4;
printf("%f\n%f\n",a,b);
} 2021/1/8
14
数据在内存中的存储格式
整型 字符型 实型
阶码j
尾数S
阶码符号 阶码的数值 尾数符号 尾数的数值
2021/1/8
15
char型与int型之间的关系
小写字母转换为大写字母
#include <stdio.h> main() {
2021/1/8
17
八进制与十六进制常数
以数字“0”开始的整型常数是八进制数 – 022、-037 – 010和10大小不一样 – 因为八进制并不常用,所以此种表示法比较少见
以“0x”或者“0X”开始的整型常数是十六 进制
– A~F和a~f用来表示十进制的10~15 – 十六进制的形式比较常用,尤其在进行位一级的
char ch = 'b'; ch = 'b' - 32; printf("%c, %d\n", ch, ch); }
#include <stdio.h> main() {
char ch = 'b';
ch = 'b' - ('a' - 'A') ;
printf("%c, %d\n", ch, ch);
运算符(Operator)
– 34种,详见附录D
分隔符(Separator)
– 空格、回车/换行、逗号等
其它符号
– 大花括号“{”和“}”通常用于标识函数体或者一个语句块
– “/*”和“*/”是程序注释所需的定界符
数据(Data)
– 变量(Variable)
– 常量(Constant)
2021/1/8
4
数据类型(Data Type)
数据为什么要区分类型? – 不同类型的数据代表不同的
数据表示形式 合法的取值范围 占用内存空间大小 可参与的运算种类
从基本数据类型到抽象数据类型 – 无数据类型 – 基本数据类型 – 构造数据类型 – 抽象数据类型
2021/1/8
5
数据类型(Data Type)
数据类型
#include <stdio.h>
main() {
printf("Data type printf("-----------printf("char printf("int printf("short int printf("long int printf("float printf("double }
2021/1/8
Number of bytes\n"); ---------------------\n");
%d\n", sizeof(char)); %d\n", sizeof(int)); %d\n", sizeof(short)); %d\n", sizeof(long)); %d\n", sizeof(float)); %d\n", sizeof(double));
2021/1/8
10
数据类型修饰符
short – short int,短整数,一般2个字节长。通常简写为short
long – long int,长整数,一般是4个字节长。通常简写为long – long double,长双精度(高精度)浮点数,一般是10个字节长。
signed – 用来修饰char、int、short和long,说明他们是有符号的整数(
相关文档
最新文档