C语言 数据类型、运算符和表达式解读

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
说明:设用0、1、2、3、4、5、6分别表示星期日、星期一、星期二 、星期三、星期四、星期五、星期六。因为一个星期有7天,即7天为 一周期,所以n/7等于n天里过了多少个整周,n%7就是n天里除去 整周后的零头(不满一周的天数),(n%7+3)%7就是过n天之后 的星期几。
28
2.3.2关系运算
用关系运算符将两个操作数连接起来的合法的C语言式子,称为关系表达式。 例如,8>5、a==b、c!=d、x>=y。
{
char ch1,ch2; ch1=‘A’; //ch1=65; ch2=ch1+32; printf(“%c”, ch); }
22
小练习:
1、小写变大写 2、计算两个字符之间的距离:输入两个字母 (小写),输出两个字母之间的距离,即两个字 母的ASCII码之间的差。
23
2.3 运算符和表达式
17
双精度浮点型
内存
float
213.5671435568967
double
64位
16 位有效数字 去VC下试试!
声明:
初始化:

double pressure_level; 取值范围:10-308 至 10308

pressure_level = 213.5671435568967; double dvalue = 35.4;
常量:5 和 9是整型常量(整数),自身信息能体现其类型 变量:在定义时指定,如:int celsius, fahr;
数据类型

5
2.1.1 常量
程序
常量是在程序中保持不变的量 常量用于定义具有如下特点的数据: 在程序中保持不变 在程序内部频繁使用 需要用比较简单的方式替代某些值
指令
标识符 关键字 常量 运算符 分隔符 等
函数体结束
执行程序的输出结果为:
fahr=100, celsius=37
4
Байду номын сангаас
引号内的fahr和引号外 的fahr有区别吗?
2.1 常量和变量
int celsius, fahr; celsius = 5 * (fahr - 32) / 9; 数据

常量:在程序运行过程中,其值不能被改变 变量:在程序运行过程中,其值可以被改变
13
2.2.1 C的数据类型
14
数据在计算机内的存储
二进制:只用0和1两个数码表示数,逢2进1. 2——10 3——11 4——100 数在机器中是用二进制表示的,原因如下: (1)易于表示:开关的通断、电压的高低、电流 的有无可以分别表示0和1; (2)二进制电路简单、可靠; (3)具有很强的逻辑功能 ;
#include “stdio.h” #define PI 3.1415926 int main() { float v,r,h; prinrf(“input r,h:”) scanf (“%f%f”,&e,&h); v=PI*r*r*h; printf(“v=%f\n”,v); return 0; }
6
常量的类型
整型常量:如32、100 实型常量: 如1.23 123.567e5 字符常量: ‘a’ 、 ‘2’ 、 ‘\n’ 字符串常量:”This is a c program”
7
符号常量
为使程序易于阅读和便于修改,可以给程序中经 常使用的常量定义一个有一定含义的名字,这个 名字称为符号常量又称为宏常量。 如:#define PI 3.1415926 #define PRICE 2.5
25
2.3.1算术运算
算术 操作数 一元 运算符 操作数
二元
26
算术运算注意
(1)C语言规定了运算符的优先级和结合性。 在表达式求值时,先按运算符的优先级别高低次序执 行,例如先乘除后加减。 (2)C规定了各种运算符的结合方向(结合性) 算术运算符的结合方向为“自左至右”,即先左后右 (3) 整数除整数,得整数 如:1/2 = 0,9/4 = 2 (4) % 模运算,针对整型数据 (5)“*”乘号不能省略 5*a不能5a (6) 双目运算符两侧操作数的类型要相同
如字符’a’ 用8位二进制 01100001 ,即十进制 59 ; 97 ~ 122 a ~ z &的97 60 < 123 { '如字符’A’ 61 用8位二进制 = 124 | 01000001 ,即十进制 字符数据可以其 ASCII 码值参与四则运算(很 (的65 62 > 125 } ) 63 ? 126 ~ 多运算)
% *
+
42
43
21
64
65 ~ 90
@
A ~ Z
127
DEL (Delete键)
字符型应用举例
大写变小写
#include<stdio.h> int main()
//‘A’的ASCII码是65,
65+32=97, 正好是’a’的ASCII码
以下运算都合法: ‘b’-’a’ ‘a’-’A’; ‘D’-’A’+1 ‘A’+25
关系运算符 种类:< <= == >= > != 结合方向:自左向右
< <= > >= == !=
关系预算的结果是整型:
优先级6(高)
若关系成立,结果为1; 若关系不成立,结果为0;
优先级7(低)
int a=3,b=5; a>b 结果为0;
a*2>b 结果为1
2>3 == 3>7结果为1
29
例 输出两个整数的最大值。
无效名称
city
currency$
12
2.2 数据类型
基本数据类型
数据类型
数据
数值 2.175
非数值 Africa char
123 整型
非整型 9/12/2003 int 整型 非整型 floatThe quick brown fox Jackie short intChan double 数值 非数值 long int 999 9002.12 数据属于不同类别 TRUE
27
例 算术运算符和算术表达式的使用
假设今天是星期三,20天之后是星期几? #include "stdio.h" int main() { int day,n; scanf("%d",&n) /*输入过多少天后*/ day=(n%7+3)%7 ; /*计算过n天后是星期几*/ printf("%d\n",day); /*输出计算结果*/ return 0; }
第2章 数据类型、运算符和表达式
回顾
程序是为执行一项任务而编写的有序指令集 C程序的组成
C语言的主要语法单位
C语言的特点 C程序的编译和运行过程 编译器将源程序转换成机器能理解的程序 连接器用于连接相关的目标文件以生成可执行程 序
2
本章要点 C语言的数据类型、运算符 C语言的常量和变量
3种逻辑运算符: &&(逻辑与) 如果两个操作数均为逻辑真,则结果为逻辑真,否 则为逻辑假,即“两真为真,否则为假”或“见假为假, 否则为真”。 ||(逻辑或) 如果两个操作数均为逻辑假,则结果为逻辑假,否 则为逻辑真,即“两假为假,否则为真”或“见真为真, 否则为假”。 !(逻辑非) 将逻辑假转变为逻辑真,逻辑真转变为逻辑假,即 “颠倒是否”,它是逻辑运算符中惟一的单目运算符。

cost_price
变量名可以由字母、数字和 _(下划线)组合而成 变量名不能包含除 _ 以外的任何特殊字符,如:%、# 、逗号、 principal 空格等 123rate lastname 变量名必须以字母或 _(下划线)开头 zip code 变量名不能包含空白字符(换行符、空格和制表符称为空白字符) C 语言中的某些词(例如 int 和 float 等)称为保留字,具有特 殊意义,不能用作变量名 marks_3 discount% C 语言区分大小写,因此变量 price 与变量 PRICE 是两个不同 的变量
机器硬件只认识 0 44 ,和1,字符如何存储? 91 [ 空字符
空格 " # $ 45 92 \ ^ ` !——每个字符用对应的 46 . 0193 串表示 ] 47 / 94 国际统一标准 —— ASCII码 48 ~ 57 58 0 ~ 9 : 95 96
符号

符号

符号
37
38 39 40 41
#include "stdio.h" int main() { int a,b,max; scanf("%d,%d",&a,&b); //输入a,b的值 if(a>b) //如果a大于b,把a赋给max max=a; else max=b; //否则把b赋给max printf("max=%d\n",max); //输出max的值 return(0); }

在标准C中: short int int 16位 long int 32位
16
16位
单精度浮点型
float 在 C 语言中用于存储单精度浮点数
float 32 位 10-38 至 10+38 ,7位有效数字
声明:
float selling_price;
初始化:
float selling_price = 11.3; selling_price = 65.90;
C语言的基本语法单位
C语言的表达式
3
例2.1 求华氏温度100F对应的摄氏温度
#include <stdio.h> int main( ) main 为函数名 { 程序从这里开始运行 函数体开始 int celsius, fahr; fahr=100; celsius=5*(fahr-32)/9; printf(“fahr=%d, celsius=%d\n“, fahr, celsius); }
30

关系运算注意:
例 若int a=0, b=5, x=100; 则 a<=x<=b的值为 1
例 5>2>7>8符合C的语法, 值为 0
例 int i=1, j=7,a; a=i+(j%4!=0); 则a= 2
例 ‘a’>0 ‘A’>100
结果为 1 结果为 0
31
2.3.3 逻辑运算符和表达式
15
整型
int
16 位
-2-15 至 215-1 , -32768 至 +32767
声明:

int age; int num, count; int num = 3; num=3;
在目前流行的大多数IDE 中: short int int 32位 long int 32位 16位
初始化:
8
例2.2 求圆柱体的体积
#include “stdio.h” int main() { float v,r,h; printf (“input r, h:”); scanf (“%f%f”, &r, &h); v=3.1415926 *r*r*h; printf (“v=%f\n”,v); return 0; }
18
字符型
在线保险单
23 年龄:_____
保险总额:98340 _____
'M' 性别:_____
int/float
char
19
字符型常量
定义:用单引号括起来的单个普通字符或转义字符.
' ' '5' 'p' '$'
"2"
'2'
正确
'2' + '2' = 4
20
字符数据的存储——ASCII码

0 32 33 34 35 36
9
2.1.2 变量
内存
编写程序时,常常需要将数据存储在内存 100 32 中,方便后面使用这个数据或者修改这个 数据的值。 通常使用变量来存储数据。使用变量可以 引用存储在内存中的数据,并随时根据需 要显示数据或执行数据操纵。
程序
存储 fahr
计算5 * (fahr - 32) / 9
将值存储为celsius
10
声明和使用变量
声明变量:
int celsius, fahr;
定义时初始化变量:
int celsius, fahr=100;
定义后初始化变量:
fahr=100;
给变量赋值,除了给一个直接的值以外,还可以通过计算获得。 如: celsius=5*(fahr-32)/9;
11
变量命名
在 C 语言中,变量命名需要遵循一定的规则 变量的命名规则: 有效名称
2.3.1 C运算符简介
1.运算符的分类 (1)按在表达式中与运算对象的关系(连接运算对象的个 数) 可以分为以下3类。 · 单目运算符:一个运算符连接一个运算对象。 · 双目运算符:一个运算符连接两个运算对象。 · 三目运算符:一个运算符连接三个运算对象
24
C 运 算 符
算术运算符:(+ - * / % ++ --) 关系运算符:(< <= == > >= !=) 逻辑运算符:((! && ||) 位运算符 :(<< >> ~ | ^ &) 赋值运算符:(= 及其扩展) 条件运算符:(?:) 逗号运算符:(,) 指针运算符:(* &) 求字节数 :(sizeof) 强制类型转换:(类型) 分量运算符:(. ->) 下标运算符:([]) 其它 :(( ) -)
相关文档
最新文档