第二章 变量、运算符和表达式

合集下载

C语言基础知识第二章概述

C语言基础知识第二章概述

2019/3/14
C语言程序设计教程
第2章 C语言的基本数据类型与表达式
12
例如:字符A的ASCII码为: 65D(十进制)=41H(十六进制)=101Q(八 进制) ∴字符A可以表示为‘A’、’\x41’、’\101’。 2、分类: char 和 unsigned char; 3、值域: 每个字符型数据在内存中占一个字节;包括 ASCII字符表中的所有字符(可显示字符和非显 示字符)。
– 例如: 某计算机允许表示具有七位有效数字的十进制数,计算 333.3333+0.0002222222,若计算时没有位数的限制,则结果应当 是3.3335222222。 计算机由于字长位数的限制,只能表示七位有 效数字,于是只得将小数点后的七个数字全部删掉,而仅保留其 整数部分,得到和值333.3335。 (4)根据实际要求选择单精度或双精度。
2019/3/14
C语言程序设计教程
13
• 注意: • • • • (1)字符常量只能用单引号括起来,不能用双引号 或其他括号。 (2)字符常量只能是单个字符, 不能是字符串。 ‘ab’ 不是字符常量 (3)字符可以是字符集中任意字符,但数字被定义为 字符型之后就以ASCII码值参与数值运算。 如,‘6’和6是不同的,‘6’是字符常量,而6是整型 常量。
注意
‘a’与“a”的区别。
2019/3/14
C语言程序设计教程
15
• 字符常量与字符串常量的区别:
– ⑴ 定界符不同。 – 字符常量使用单引号,而字符串常量使用双引号。 – ⑵ 长度不同。 – 字符常量的长度固定为1,而字符串常量的长度可以是0,也可以 是某个整数。 – ⑶ 存储要求不同。 – 字符常量存储的是字符的ASCII码值,而字符串常量除了要存储 字符串常量的有效字符外,还要存储一个字符串结束标志‘\0’。

第2章_数据类型、运算符和表达式《C语言程序设计(第三版)》-电子教案

第2章_数据类型、运算符和表达式《C语言程序设计(第三版)》-电子教案

2.2 标识符、常量与变量

符号常量
【例2-1】输入圆的半径,计算周长和面积。 #define PI 3.14159 void main() { float r,c,s; scanf("%f",&r); c=2*PI*r; s=PI*r*r; printf("r=%f,c=%f,s=%f\n",r,c,s); }

以下是合法的整型常量:

2.2 标识符、常量与变量

实型常量

实型常量只能用十进制形式表示 表示形式:


小数形式。由数字序列和小数点组成,如 3.1415926、-0.15、.15、2.等都是合法的实型 常量。 指数形式。由十进制数加上阶码标志“e”或 “E”及阶码组成,如3.14e-4或3.14E-4表示 3.14×10-4。
2.2 标识符、常量与变量

2.2.3 变量


在程序运行过程中,其存储的值可以被改变的量称 为变量 变量必须通过标识符进行说明,称为变量名。 变量名和内存单元地址存在映射关系,程序可以通 过变量名寻址,从而访问其存储的数据。
2.2 标识符、常量与变量

变量的定义和说明

数据类型 变量名1[,变量名2,…,变量名n];
long型转换成float型时由原来可达10位整数变成只有7位有效数字精度丢失但由于数的范围扩大了数据类型从较低级提升到较高级随着竞争日益激烈酒店嘴中的肥肉被大肆抢夺各大酒店在这场竞争中几乎溃不成军
21世纪高等学校精品规划教材
第2章 数据类型、运算符 和表达式



掌握C语言的基本数据类型 掌握标识符、关键字、常量和变量的使用 掌握运算符、表达式以及数据类型之间的转换 等 掌握简单数据的输入输出

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语言程序设计 第2章 数据类型

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);

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

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。

C语言 第2章 类型、运算符与表达式(2.4~2.7)

C语言 第2章 类型、运算符与表达式(2.4~2.7)
第二章
数据类型、运算符和表达式
主要内容
2.1 预备知识 2.2 常量和变量的概念 2.3 各种数据类型的常量及变量 2.4 变量赋初值 2.5 不同类型数据之间的混合运算 2.6 常用运算符和表达式 2.7 输入函数与输出函数
2
2.4.1 变量和内存的概念
变量: 程序运行过程中其值可以改变的量。 系统为程序中的每一个变量开辟存储单元。 变量名: 字母开头,后跟字母、数字和下划线组成。 C语言中的关键字不能作为变量名。
37
2.7.1
格式输出函数printf
printf函数一般格式: printf(格式控制,输出表列) 格式控制是由双引号括起来的字符串,包含三种信息: 1、格式说明:由“%”和格式字符组成,如%d,%f等。 它的作用是将输出的数据按照指定的格式输出。 2、普通字符:需要原样输出的字符。 3、转义字符:用于控制输出。 输出表列是一些要输出的数据。
27
2.5 数据的混合运算
1、自动转换
• 运算转换
• 赋值转换 2、强制类型转换
28
1、自动转换—运算转换

在进行运算时,不同类型的数据要先自动转换成 同一类型,然后进行运算。转换的规则按图所示。
double← float
long unsigned 转换由编译系统自动完成。 转换按数据长度增加的方向进行, 即按“向高看齐”的原则提升“ 较低”类型,以保证不降低精度。

33
2、强制类型转换
注意:对一个变量进行强制转换后,得到一个新的 类型的数据,但原来变量的类型不变。 例:x原为实型变量且值为2.6,在执行 i = (int)x 后得到一个整数 2,并把它赋给整型变量 i, 但 x 仍为实型,值为2.6。

C语言 数据类型、运算符与表达式

C语言  数据类型、运算符与表达式

C语言A
整型数据的溢出
#include <stdio.h> void main() { int a,b; a=32767; b=a+1; printf(“%d,%d\n”,a,b); } 运行结果:32767,-32768
说明:数值是以补码表 示的。一个整型变量 只能容纳-32768~ 32767范围内的数, 无法表示大于32767 或小于-32768的数。 遇此情况就发生‚溢 出‛。
运行结果:total=300
量赋值。 */
C语言A
a
变量名 变量值 存储单元
二、变量
3
变量代表内存中具有特定属性的一个存储单
元,它用来存放数据,这就是变量的值,在 程序运行期间,这些值是可以改变的。 变量名实际上是一个以一个名字对应代表一 个地址,在对程序编译连接时由编译系统给 每一个变量名分配对应的内存地址。从变量 中取值,实际上是通过变量名找到相应的内 存地址,从该存储单元中读取数据。
C语言A
标识符:用来标识变量名、符号常量名、函
数名、数组名、类型名、文件名的有效字符 序列。
符号常量:在C语言中,可以用一个标识符
来表示一个常量,称之为符号常量。
符号常量在使用之前必须先定义,其一
般形式为:
#define 标识符 常量
C语言A
习惯上符号常量的标识符用大写字母,
变量标识符用小写字母,以示区别。 符号常量与变量不同,它的值在其作用 域内不能改变,也不能再被赋值。 使用符号常量的好处是:

例如:求-10的补码。 15
10的原码: 取反:
0
0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0

C语言程序设计第2章-1数据类型、运算符和表达式

C语言程序设计第2章-1数据类型、运算符和表达式
1、按运算符的功能分成:算术运算符、关系运算符、逻辑运算 符、赋值运算符、位运算符、条件(tiáojiàn)运算符、自增和自减 运算符、逗号运算符、指针运算符、强制类型转换运算符、 分量运算符、下标运算符、求字节数运算符、函数调用运算 符等等。
2、 C 语言的运算符的优先级与结合性
3、表达式:由操作数和运算符组成的序列。
5
精品文档
⒉ 真值: 带符号位的机器数对应的数值称为机器数的真值。 (10100011)2= -35
⒊ 无符号数:当计算机字长的所有二进位都用来表示(biǎoshì)数值时,称 为无符号数。
2.2.2 原码、反码和补码
⒈ 原码
整数 X 的原码指:其数符位 0 表示正,1 表示负,其数值部分
就是 X 的绝对值的二进制表示。
2.1 常用 的进位制 (chánɡ yònɡ)
2.1.1 二进制、八进制和十六进制(shíliùjìn zhì)数
3
精品文档
2.1.2十、二进制、八进制和十六进制数之间的换算
⒈ 二、八、十六进制数 → 十进制数的换算采用按权展开法。
(2AB.F)16 = 2χ162+10χ161+11χ160+15χ16-1 = 683.93 ⒉ 十进制数 → 二进制数的换算整数部分(bù fen)采用除以二取余直到商
19
精品文档
2.5.1 算术运算符与算术表达式
⒈ 基本的算术运算符:
14
精品文档
3.字符常量
字符常量是用单撇号括起来的单个字符或转义字符,
如: ‘a’, ‘9’, ‘&’, ‘\n’, ‘\’’, ‘\101’。
字符常量的值为该字符的ASCII码值,如 ‘a’值为97, ‘\n’

C语言复习资料 第二章重点内容

C语言复习资料  第二章重点内容
阶符 阶码
11
2。 对上述已经定义的实型常量指数形式的说明:
(1)在此的digits是一位或多位十进制数字(0—9)组成。 (2)小数点之前是整数部分,之后是小数部分。 (3)小数点在没有小数时可以省略。如:3E+6 (4)指数部分用E或者e开头,幂指数可以为负,当没有符号时,视为正 指数,且其基数都为10。 (5)在不加说明的情况下,实型常量为正值,如果要表示负值,必须在 常量前使用负号。如:-2.5E-5 (6)字母E或e之前必须有数字,且E或e之后指数必须为整数。 如:e3,2.3e9.5,.e3等都是不合法的。
上述各类型整型变量占用的内存字节数随系统而异。在16位操作系 统中,一般用2字节表示一个int型变量,且long型(4字节)≥int型 (2字节)≥short型(2字节)。
2.占用内存字节数与值域
8
显然,不同类型的整型变量,其值域不同。占用内存字 节数为n的(有符号)整型变量,其值域为:-2n*8-1~(2n*8-11);无符号整型变量的值域为:0~(2n*8-1)。(同样适合于 各种不同的类型 ) 例如,PC机中的一个int型变量,其值域为-22*8-1~(22*8-11),即-32768~32767;一个unsigned型变量的值域为:0~ (22*8-1),即0~65535。 2.4.2 整型常量 1.三种表示形式 整型常量即整常数,在C语言中可用三种形式表示: (1)十进制。例如10、36。 (2)八进制(以数字0开头)。例如012。 (3)十六进制(以数字0+小写字母x开头)。例如0x36。
9
2.分类 (1)基本整型。在16位机中,用2字节存储,其数据范 围与int型变量一样。 (2)长整型(在数值后面加“L(l)”)。对超出基 本整型值域的整型常量,可使用长整型常量表示,其取值 范围可达-231-(231-1)。例如,123l、315L等。 3.类型匹配规则 类型匹配规则为:一个整型常量,可以赋给能容纳下其 值的整型变量。 例如,其值在-215--(215-1)的整型常量,可以赋 给int型变量和long int型变量;其值在-231--(231-1)的整 型常量,就只能赋给long int型变量。 注意:常量无unsigned型。但一个非负整型常量,只要 它的值不超过相应变量的值域(即取值范围),也可以赋 给unsigned型变量。

c语言程序设计答案(清华大学出版社)

c语言程序设计答案(清华大学出版社)

c语言程序设计答案(清华大学出版社)C语言程序设计是一门基础而重要的计算机编程课程,它不仅教授编程语言的语法和结构,更培养了解决问题的逻辑思维能力。

《C语言程序设计》一书由清华大学出版社出版,是众多高校计算机专业学生的必读教材。

以下是该书的一些答案解析,以帮助学生更好地理解和掌握C 语言的相关知识。

第一章:C语言概述- C语言的特点:C语言是一种结构化语言,具有高效、灵活、功能强大等特点。

- C语言的发展历史:C语言由丹尼斯·里奇在20世纪70年代初期开发,最初用于UNIX操作系统。

第二章:数据类型、运算符和表达式- 基本数据类型:包括整型(int)、字符型(char)、浮点型(float和double)。

- 运算符:包括算术运算符、关系运算符、逻辑运算符、位运算符等。

- 表达式:由常量、变量、运算符和函数调用组成的组合,用于计算和赋值。

第三章:控制语句- 顺序结构:程序按照代码的顺序执行。

- 选择结构:使用`if`、`switch`等语句进行条件判断。

- 循环结构:使用`for`、`while`、`do-while`等语句进行重复执行。

第四章:数组- 一维数组:连续存储的相同类型元素集合。

- 二维数组:可以看作是一维数组的集合。

- 数组的初始化:可以使用花括号进行初始化。

第五章:函数- 函数的定义:使用`return`类型和函数名定义。

- 函数的调用:通过函数名和参数列表调用。

- 递归函数:函数内部调用自身。

第六章:指针- 指针变量:存储变量地址的变量。

- 指针的运算:包括地址运算和指针的自增自减。

- 指针与数组:指针可以方便地访问数组元素。

第七章:结构体与联合体- 结构体:可以包含不同类型的数据成员。

- 联合体:所有成员共享同一块内存空间。

第八章:预处理指令- 宏定义:使用`#define`定义常量或宏。

- 文件包含:使用`#include`引入头文件。

第九章:位运算- 位运算符:包括位与(&)、位或(|)、位非(~)、位异或(^)等。

c程序设计第三版课后答案完整版

c程序设计第三版课后答案完整版

c程序设计第三版课后答案完整版C程序设计第三版课后答案完整版C程序设计是一门基础而重要的计算机科学课程,它不仅教授编程语言本身,还涵盖了程序设计的基本概念和技巧。

第三版的教材在内容上进行了更新和扩充,以适应现代编程教育的需求。

以下是基于第三版C 程序设计教材的课后答案完整版,供同学们参考学习。

第一章:C语言概述1. C语言的历史和特点- C语言由Dennis Ritchie在1972年开发,用于UNIX操作系统。

- 特点包括跨平台、高效、灵活、可移植。

2. C语言的基本组成- C程序由函数、变量、表达式和控制语句组成。

3. C程序的编写和运行过程- 编写源代码,编译,链接,生成可执行文件,运行。

第二章:数据类型、运算符和表达式1. 基本数据类型- 整型(int)、浮点型(float)、双精度型(double)、字符型(char)。

2. 变量声明和初始化- 使用类型说明符声明变量,初始化赋予初值。

3. 运算符- 算术运算符、关系运算符、逻辑运算符、位运算符等。

4. 表达式- 表达式由操作数和运算符组成,用于计算结果。

第三章:控制语句1. 条件语句- if语句、switch语句。

2. 循环语句- while循环、do-while循环、for循环。

3. 跳转语句- break语句、continue语句、return语句、goto语句。

第四章:函数1. 函数的定义和声明- 函数由返回类型、函数名、参数列表和函数体组成。

2. 函数的调用- 调用函数时,需要传递参数并接收返回值。

3. 函数的作用域和生命周期- 局部变量的作用域仅限于函数内部,全局变量可在程序中多处访问。

第五章:数组和字符串1. 数组的基本概念- 存储相同类型元素的集合。

2. 字符串的操作- 字符串是字符数组,以空字符'\0'结尾。

3. 常用字符串处理函数- strcpy、strcat、strlen、strcmp等。

第六章:指针1. 指针的基本概念- 指针变量存储另一个变量的地址。

c语言程序设计苏小红版答案

c语言程序设计苏小红版答案

c语言程序设计苏小红版答案C语言程序设计是计算机科学与技术专业学生的基础课程之一,它不仅教授了编程的基本概念和技巧,还培养了学生的逻辑思维和问题解决能力。

苏小红版的《C语言程序设计》教材以其系统性和实用性广受好评。

以下是对该书部分章节的习题答案的总结,以帮助学生更好地理解和掌握C语言程序设计。

第一章:C语言概述1. C语言的特点:C语言是一种结构化语言,具有高级语言的语法和汇编语言的控制能力。

它具有可移植性、简洁性、高效性等特点。

2. C语言的发展历史:C语言由Dennis Ritchie在20世纪70年代初期开发,最初用于UNIX操作系统。

第二章:数据类型、运算符和表达式1. 基本数据类型:包括整型(int)、浮点型(float和double)、字符型(char)等。

2. 运算符:包括算术运算符、关系运算符、逻辑运算符、位运算符等。

3. 表达式:由变量、常量、运算符和函数调用组成的,可以计算出结果的代码片段。

第三章:控制结构1. 顺序结构:程序按照编写顺序依次执行。

2. 选择结构:使用if、switch等语句根据条件选择执行不同的代码块。

3. 循环结构:使用while、do-while、for等循环语句重复执行代码块。

第四章:数组1. 一维数组:连续存储的相同类型元素集合。

2. 二维数组:可以看作是一维数组的数组,用于存储矩阵等数据结构。

3. 字符数组:特殊的一维数组,用于存储字符串。

第五章:函数1. 函数的定义:使用关键字`void`或返回类型定义函数的返回值类型。

2. 函数的调用:在程序中通过函数名和参数列表调用函数。

3. 递归函数:函数调用自身,用于解决某些递归问题。

第六章:指针1. 指针变量:存储另一个变量的内存地址的变量。

2. 指针与数组:指针可以方便地操作数组元素。

3. 函数指针:指向函数入口地址的指针变量,可以调用函数。

第七章:结构体与联合体1. 结构体:可以包含不同类型的数据成员的复合数据类型。

C++程序设计第2章数据类型、运算符和表达式

C++程序设计第2章数据类型、运算符和表达式
空间、所表示的数据 范围和精度、以及所能进行的运算。C++语言的数据类 型大致可分为两类:一类是基本数据类型,另一类是非基 本数据类型。基本数据类型包括整型、字符型、浮点型和 布尔型等。非基本数据类型包括由基本数据类型构造出来 的构造类型、指针类型、引用类型和空类型等。如图2-1 所示。
11
2.2 C++的基本数据类型

不同计算机系统可能存在数据类型的长度不一样可用sizeof(数据类 型)测试某数据类型的字节长度。 cout<<“size of int is”<<sizeof(int)<<endl; 在16位计算机结果:
在32位计算机上输出:
size of int is 2
size of int is 4
3
2.1 保留字和标识符
2.1.1 保留字 C++中保留字(Reserved word)也称为关键字 (Keyword),它们是预先定义好的字符集合,对C++ 编译程序有着特殊的含义。表2-1给出了C++和Visual C++兼容的保留字。 保留字是语言系统的保留成分,编程者不能使用它们作为 自己的变量名或函数名等。
7
2.2 C++的基本数据类型
基本类型 整型 字符型 浮点型 布尔型 枚举类型 数组类型 结构体类型 共用体类型 类类型
数据类型
构造类型
指针类型 引用类型 空类型(void) 图2-1 C++的数据类型
8
2.2 C++的基本数据类型
C++语言的基本数据类型有如下四种: 整型,说明符为int; 字符型,说明符为char; 浮点型(实型),分为float(单精度浮点型),double(双精度 浮点型); 布尔型,说明符为bool。它的值是true和false。 教材中表2-2列出了Visual C++6.0中基本数据类型的情况。 注意:不同数据类型其值域不同,应住这些值域,在程序设计中, 要估计变量的值不应超过这些值域,否则将产生数值溢出现象,产 生编译器无法检测的错误。

C语言教程第2章数据类型、运算符与表达式

C语言教程第2章数据类型、运算符与表达式
const float pi = 3.1425926;
常量只能在定义时赋值,然后不能再改变 其值 常数、 const常量、宏常量和枚举常量, 都可以用来表示一个永远不会改变的数
前者不建议直接使用,而用后三者代替
C语言大学实用教程
2.5 变 量
变量是在程序执行过程中可以改变、可以赋 值的量。
在程序中每一个变量都有一个名子即变量名, 程序对该变量访问(存入、读取)都是通过变 量名进行的。
运行结果: 1234567936.000000
1234567890.000000
}
C语言大学实用教程
2.6 常用运算符及表达式
算术运算符
+,-,*,/,%
加、减、乘、除、求余运算 四则混合运算中,先算乘除,后算加减, 按从左向右的顺序计算,左结合
#include <math.h>
常用的标准数学函数
C语言大学实用教程
#include <stdio.h> /*函数功能:计算两个整数相加之和 入口参数:整型数据a和b 返回值: 整型数a和b之和 */ int Add(int a, int b) { return (a + b); }
2.1 一个简单的C程序例子
/*主函数*/ ) { int x, y, sum = 0;
022、-037 010和10大小不一样 因为八进制并不常用,所以此种表示法比较少见
以“0x”或者“0X”开始的整型常数是十六进 制
A~F和a~f用来表示十进制的10~15
十六进制的形式比较常用,尤其在进行位一级的 控制的时候 0x12、-0x1F, -0x1f
C语言大学实用教程
2.4 常量
字符常量

c++第二章

c++第二章

int a, b;
float x,y ;
(定义变量a和b为整型) (定义变量x和y为单精度实型)
• 变量的赋值和初始化
变量必须先有确定的值后才能参与各种相应的操作,变
量获取值的方法有三种:输入、赋值、初始化 • 赋值语句 例如: int a; a = 3;
// 使整型变量a的值为3
又如: int a, b, c; a = b = c = 0;//允许在一条赋值语句中为多个变量同时赋值 • 初始化:在定义变量的同时对变量赋初值。 例如: int a=3; 或 int a(3); // 使整型变量a的值为3
在c++中,int型占4个字节。
八进制形式 以数字0开头,由0~7之间的数字组成的数 据,如: 056。
十六进制数
以0x或0X开头,由数字0~9和字母A、B、C、 D、 E、F组成的数据。如: 0X5A、0x39、0x5b。
• 实型常量
实型常量有两种表示方式:
1)十进制小数形式 由正负号、数字和小数点组成,其中小数点不能缺 少,正数符号可省略。如1.25、-1.25、17.和.1。 2)指数形式 由尾数开头,加上指数部分共同构成,其中指数部 分由指数符号e(或E),正负号及整数组成。如1.25e-5、 +1e10、-1.25e5、1e-6、3e2。 注意:e前面不能没有数字,e后面的数字必须为整数,也 不能加园括号。如1E(-3)、E-5、1e2.1都是错误的。
在逻辑运算中,逻辑运算符两端的操作数如为“非0”, 就当作“真”来处理,如果是“0”,便当作“假”来 处理。 例如: 5>3 && a<b的结果为1 !12+3<6的结果为1。
说明:

C++第2章 数据类型与表达式

C++第2章 数据类型与表达式

signed long int
unsigned long int float double long double
singned long
unsigned long —— —— ——
有符号长整型(同long int)
无符号长整型 浮点型 双精度型 长双精度型
4
4 4 8 10
-2,147,483,648~2,147,483,647
128u // unsigned 1024UL // unsigned long
1L
// long
8Lu
// unsigned long
14
2.2.1 整型字面值常量
2.前缀类型标识
在C++中整型有三种表示形式:10进制、8进制和16进制,以非 0开头的数是10进制,以0开头表示8进制,以0x或0X开头表示 16进制,例如:
H e A \0 AΒιβλιοθήκη llo \0
图2-2 字符串与字符的存储方式
23
2.2.6 枚举
C++程序设计 第2章 数据类型、运算符和表达式
第2章 数据类型、运算符和表达式
2.1 2.2 2.3 2.4 2.5 2.6 2.7 基本数据类型 常量 变量 基本运算符 类型转换 表达式和语句 本章小结
2
2.1 基本数据类型
为什么要区分数据类型?


C++通过数据类型,告诉计算机数据是如何定义的。
10
2.1.5 C++的数据类型
C++数据类型如图2-1所示。
基本数据类型 整数类型(int) 单精度型(float) 浮点类型 双精度型(double) 字符类型(char) 布尔类型(bool) 空值类型(void) 枚举类型 数组类型 C++数据类型 构造数据类型 结构与联合类型 指针类型 引用类型

C语言知识点:第2章 数据类型、运算符与表达式

C语言知识点:第2章 数据类型、运算符与表达式
C 语言程序设计知识点
主讲教师:杨剑
第 2 章:数据类型、运算符与表达式
1. 本章目标:
理解变量和常量的含义 熟悉基本数据类型 - int、char、float 和 double 使用算术运算符 理解类型转换 使用关系和逻辑运算符
2. 内存如何存放数据
电脑使用内存来记忆计算时所使用的数据 内存如何存储数据? 内存像旅馆.数据各式各样,要先根据数据的需求(即类型)为它申请一块合适的空
23. 复合赋值表达式
24. 赋值表达式和逗号运算符
赋值表达式 a=b=c=5;(从右向左计算) a +=a-=a*a
逗号运算符和逗号表达式 3+5,6+8 a=3*5,a*4
25. 习题
~7~
C 语言程序设计知识点
主讲教师:杨剑
有以下程序
main()
{
char a1=’M’,a2=’m’;
12. 单精度浮点型
float 在 C 语言中用于存储单精度浮点数 float 32 位 10-38 至 10+38 ,7 位有效数字 声明:
float price; 初始化:
float score = 11.3; score = 65.90;
13. 双精度浮点型
double 32 位 16 位有效数字 声明:
const float PI=3.14; S=PI*r*r; //等价于 3.14*r*r const 关键字的作用就是“冻结”一个量,它的值不能被修改,是一个只读(read only) 量。 优点:比数值常量可读性好、修改容易
18. 符号常量 2(宏常量)
还可用宏定义符号常量 语法:#define 符号名 常量值 例: 计算圆的周长时

第2章 数据类型、运算符、表达式

第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 位二进制(二个字节)表示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

字符串的输出与读取
• 输出字符串,并换行 Console.WriteLine("字符串"); • 输出字符串,不换行 Console.Write ("字符串"); • 读取字符串 Console.ReadLine ("字符串");
示例程序
Console.WriteLine(“Please input your name”); String name = Console.ReadLine(); Console.WriteLine(“Your name is ” + name);
常量
类型 int uint long ulong float double decimal 后缀 无 u或U l或 L ul或UL f或 F d或D或无 m或 M 示例 10,100,-10,-100 1u,100u,2007U 10l,100L,-888888L 200000000UL 1.0f,3.14f,1.155F 1.0,3.1415926535897D 1000.00m
字符
• 字符包括英文字母、中文汉字、各类特 殊字符、数字符号等等。 • C#中用单引号标记字符 • 比如’f‟, ‟#‟, ‟8‟等 其中’8‟只是用来显示8这个符号,不是 一个可以用于计算的数字。
字符变量和字符串变量声明
• 字符变量
char c; c = „f‟;
• 字符串变量
string s; s = "fine";
溢出
short a; a = 32768;
实数型变量
• 实数型也称为浮点型
类型
字节数
取值范围
有效数字 备注
float
double
4
8
±1.5×1045~3.4×1038
±5.0×10324~1.7×10308
7位
15/16位
单精度实数
双精度实数
decimal 16
±1.0×1028~7.9×1028
转义字符
Console.WriteLine(“Where are you from? \n I am from Shanghai.”);
\n在这里起换行的作用。像这样控制文本格式 的特殊字符称为转义字符。
转义字符
转义字符 功能 单引号 Unicode编码 0027
\‟ \”
\\ \0 \a \b
28位
金融货币
从上表可以看出,decimal的有效位数很大,达到了28位,但是表示的 数据范围却比float和double类型小。decimal类型并不是C#中的基础 类型,所以使用的时候会对计算时的性能有影响。
Decimal数据类型可以在Visual Studio编辑器中使用,只要在一个浮点类 型的值后加一个大写或小写的M,则编辑器会认为这个浮点类型的值是一个 Decimal类型。这种128位高精度十进制数表示法通常用在财务计算中。要 注意的是,在.NET环境中,计算该类型的值会有性能上的损失,因为它不 是基本类型。
变量、运算符和表达式
上海师范大学
主讲:於 家
变量
• 变量有多种类型,比如自然数、整数、 有理数、实数等。 • C#中如何定义各种类型的变量?变量如 何运算?
整型变量
Static void Main(string[] args) { int a; //声明变量a a = 7; //为变量a赋值 int b; //声明变量b b = 2; //为变量b赋值 int add; //声明变量add add = a + b; //求变量a、b的和 //输出结果 Console.WriteLine(“{0}+{1}={2}”,a,b,add); }
标准ASCII码表(部分)
ASCII值 0 1 2 3 4 控制字符 NUT SOH STX ETX EOT ASCII值 32 33 34 35 36 控制字符 (space) ! ” # $ ASCII值 64 65 66 67 68 控制字符 @ A B C D ASCII值 96 97 98 99 100 控制字符 、 a b c d
ASCII编码
• 为了方便在计算机里使用字符,在计算 机诞生之初,制定了ASCII编码 (American Standard Code for Information Interchange),即美国信 息交换标准码。标准ASCII码用7位二进 制数来表示128个字符,包括英文字母、 希腊字母、数字、常用的字符和各种控 制符。后来ASCII码扩展至256个字符。
声明整型变量
int a;
变量类型 变量名称
• 该语句被执行时,系统会在内存中 分配一块4字节的空间,用来存储变 量a的值。整型变量的默认值为0。
赋值语句
a = 7;
• 把变量a的值设置为7(原先未赋值 时默认为0)。
*赋值运算符“=”不是“相等”的意思。并非是 比较左右两边是否相等。
赋值语句
add = a + b;
变量的命名规则
• 变量的第一个字符必须是字母、下划线 或者@; • 后面的字符可以使字母、数字、下划线; • 变量不能和关键词重名(比如int、 double、float、还有以后我们要讲的if、 for等关键词); • 区分大小写(A与a是两个变量); • 命名选择有意义的名称,更容易理解。
变量的命名规则
• Int型变量占用4个字节的空间,共32位。 为了表示负数,把最高位定义为符号位, 0表示正数,1表示负数,后面的31位表 示数值的大小。 • Int型的取值范围是-231~231-1,即2147483648~2147483647
short型
• 某些情况下使用int型太浪费 • short型变量占用2个字节,最高位表示 正负号,后面的15位表示数值大小,取 值是-215~215-1,即-32768~32767。
decimal[ (p[ , s] )] and numeric[ (p[ , s] )] 固定有效位数和小数位数的数字。当使用最大有效位数时,有效值是从 - 10^38 +1 到 10^38 1。decimal 的 SQL-92 同义字是 dec 和 dec(p, s)。numeric 的功能相当於 decimal。
把读取的字符串赋值给变量name,然后输出。
读取字符
Int ch = Console.Read(); 从输入窗口读取一个字符,返回字符的 ASCII编码。 如:输入f,返回f的ASCII码102
读取数字
需要使用Convert.ToDouble()把字符串 转换为double型数字
double a = Convert.ToDouble(Console.ReadLine());
• 例子(哪些是错误的变量名)
a g1 float chkListBox _Count 5thRoom @shnu
推荐的变量命名方式
• 变量名称第一个单词全部小写,最好用 简称来表示变量的类型,以后在用变量 的时候可以很容易的看出变量的类型。 • 如:string strName; double dblNumber;
p (有效位数)
可储存的最大十进位数总数,小数点左右两侧都包括在内。有效位数必须是 1 至最大有效位数 38 之间的值。预设有效位数是 18。 s (小数位数) 小数点右侧所能储存的最大十进位数。小数位数必须是从 0 到 p 的值。只有在指定了有效位数 时,才能指定小数位数。预设小数位数是 0;因此,0 <= s <= p。最大储存体大小会随著有效 位数而不同。 例: decimal(2,1),有效长度为2,小数位占1位。
赋值语句
n = n + 100;
• 将n的增加100,然后重新赋值给n
int n; n = 100; n = 200; n = n + 100; Console.WriteLine(“n = {0}”, n);
整型变量的类型
• int型 • short型 • long型 • 无符号型
Int型变量的取值范围
Unicode编码
• ASCII码可以表示256个字符,对西方的 字母语言编码已经足够了。但是对于中 国的汉字,却远远不够。 • 为解决汉字的编码问题,1981年中国制 定了GB2312编码标准,用两个字节表 示一个汉字,可以存储6万多个字符。日 文、韩文、繁体中文等文字都使用类似 的方法来构建本地字符集编码。这些字 符集都使用多个字节来表示一个字符, 因此这些编码称为多字节字符集 (Charset)。
双引号
反斜杠 空 警告 退格
0022
005C 0000 0007 0008
\f
\r
换页
回车
000C
000D
转义字符
Console.WriteLine(“C:\STUDY\2010”);
由于双引号用来标记字符串,反斜杠“\” 用来标记转义字符,所以在输出的时候 要用转义字符。
Console.WriteLine(“C:\\的内容原样输出, 而不理会里面的转义字符。
Console.WriteLine(@“ Where are you from? \n I am from Shanghai.”);
+运算符
• 将两个字符串用“+”运算符连接。
string strSentence = “Shanghai Normal University ”; strSentence = strSentence + “ is a famous university in Shanghai.” Console.WriteLine(strSentence);
Unicode编码
• 多字节字符集由于各个国家和地区之间 定义的字符集编码标准不同,会产生不 兼容的问题。比如用GB2312编码的软 件,在繁体中文的环境下就会出现乱码。 • Unicode编码:世界通用的编码。为全 世界每个字符提供统一的编码,同一个 字符,不论在什么平台、什么软件上、 什么语言环境中,都有相同的编码。
相关文档
最新文档