ImageVerifierCode 换一换
格式:PPT , 页数:63 ,大小:482.50KB ,
资源ID:388183      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-388183.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第4讲基本数据类型与运算.PPT)为本站会员(国***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

第4讲基本数据类型与运算.PPT

1、1,第3-4讲 基本数据类型与运算,2,例1 求一个数的平方根,C程序结构引例,输入,处理,输出,/* 例1 求一个数的平方根 */#include #includemain() double x,s;printf(“input number: ”);scanf(“%lf”,printf(“Square root of %lf is %lf.n”,x,s);,3,C程序结构引例,例2 求a,b两个数的和与积,并输出,/* 例2 */#include main() int a,b,sum,mult; a=10; b=24; sum=a+b; mult=a*b; printf(”sum= %dn,

2、sum); printf(”multiply= %dn,mult); getch();,4,本讲主要内容,第2章2.1-2.6,重点:变量命名规则 基本数据类型的使用 常用运算符的使用,本讲小结,5,1 基本数据类型,1.1 C语言的数据类型,C数据类型,6,1 基本数据类型,1.2 基本数据类型数据的表示形式,整型数据,实型数据,字符型数据,7,1 基本数据类型,1.3 基本数据类型的存储长度,sizeof使用示例,可通过sizeof运算符得到某种数据类型的数据字节数,返回主菜单,8,2 变量和常量,2.1 变量的定义,在程序运行过程中,其内存单元中存放的数据值可以根据需要随时改变。(其值可

3、变),内存单元,变量存储单元的大小由什么确定?,注意:变量必须先定义,才能使用。否则编译系统将给出变量未定义的错误信息(Undeclared Identifieraidentifai ),9,2 变量和常量,2.2 变量的定义标识符(名字),10,2 变量和常量,2.2 变量的定义自定义标识符命名规则,自定义标识符由英文字母、数字和下划线构成开头字符必须是字母或下划线(不能为数字)不能使用关键字(建议也不要使用预定义标识符),标识符命名原则:常用取简,专用取繁,见名知义,标识符的长度:一般长度为8不同的C编译系统有不同的规定:Turbo C 2.0 最长可允许32个字符;VC+ 6.0 标识符

4、最长可允许247个字符。,11,2 变量和常量,2.2 变量的定义C语言的基本字符集,C语言的基本符号集采用ASCII码字符集,包括:(1)大小写英文字母各26个。(2)10个阿拉伯数字09。(3)其他特殊符号,包括以下运算符和操作符: + - * / % = = != & | ! & | = + - ?: () . - # sizeof += -= *= /= %= &= = |= ,12,练习,sum, a#3, Sum,n2, 2student, _average, !sum_2, a_3,number.3,student_2_name,num-1,mouth, PI, s123, ar

5、ea, name_1 ,45D, ab, day-1, m.m 请问:上面的标识符哪些是合法的,哪些是不合法的?,13,2 变量和常量,2.2 变量的定义变量的定义变量定义的一般格式:,存储类别 类型符 变量名表 ;,引例中变量的定义,14,2 变量和常量,2.2 变量的定义变量的初始化变量的初始化,就是在定义变量的同时赋予其与类型相一致的初值,并且与问题解决意义相一致的初值。,int n;float num;float sum;int i;float avg;或者int n,i;float num,sum,avg;,15,2 变量和常量,2.3 常量(Constants),对于常量,在程序运

6、行期间,其内存单元中存放的数据值不能改变。,常量,直接常量符号常量,思考题:什么样的情况需要定义符号常量?,为了区别程序中的符号常量名和变量名,习惯上用大写字母命名符号常量。,16,2 变量和常量,2.3 常量(Constants),十进制的整型常量:如123、-789、0等。八进制的整型常量:以0开头的常量是八进制整型常量。如023表示八进制数23,它等价于十进制数的19; 十六进制的整型常量:以0x开头的数是十六进制整型常量。如0x123表示十六进制数123。,整型常量(三种):,17,2 变量和常量,2.3 常量(Constants),小数形式:由数字、小数点和可能的正负号组成。例如:3

7、.1416,-12.76,0.12,.12,12.,12.0都是C语言合法的实数。指数形式:由尾数部分、字母e或E和指数部分组成。如十进制数320 000.0用指数法可表示为3.2e5,其中3.2称为尾数,5为指数,e也可用E表示。字母e或E之前(即尾数部分)必须有数字,e后的指数部分必须是整数,如e-5、7.2e2.5都是不合法的实数。,实型常量(只有十进制两种):小数形式和指数形式,18,2 变量和常量,2.3 常量(Constants),字符常量只能用单引号括起来,不能用双引号或其他括号。字符常量只能是一个字符,不能是字符串。字符可以是字符集中的任意字符。字符在内存中以ASCII码存放。

8、,字符常量:,如:a、x、?、$。 注意,a和A是不同的字符常量。 a : ASCII码:97 A : ASCII码:65,19,2 变量和常量,2.3 常量(Constants),双引号括起来的字符序列。字符串常量在内存中的存放:每一个字符均以其ASCII码存放,且最后添加一个“空字符”0。注意:0和0不同,0是编码为0的字符(空操作字符),而0则是数字0,其编码为48。,字符串常量:,例: How do you do., CHINA CHINA存放在内存中的情况是:(6字节存储器,不是5字节),C H I N A 0,最后一个字符.。,思考: a和”a”有什么区别?,20,2 变量和常量,

9、2.4 整型变量,整型变量的分类(IBMPC)基本型(整型) int 2字节 短整型 short 或 short int 2字节 长整型 long 或 long int 4字节 无符号整型:unsigned 2字节无符号短整型:unsigned short 2字节 无符号长整型:unsigned long 4字节 C语言标准没有规定整型变量在计算机内存中所占的字节数,它与具体的机器和操作系统有关。,21,2 变量和常量,2.4 整型变量,整型变量的定义实例1main() int a,b,c,d; unsigned int u; a = 12; b = -24; u = 10; c = a +

10、u; d = b+u; printf(a+u = %d, b+u = %dn, c, d); 程序运行显示:a+u = 22, b+u = -14,22,2 变量和常量,2.4 整型变量,整型变量的定义实例2P22main() int a=3,b=5; printf(a+b = %dn, a+b); 程序运行显示:a+b = 8,23,补充,基本数据类型数据的存储形式整型变量的存储,Int型:,32767,-32768,unsigned int型:,最大65535,最小0,最高位为符号位,最大,最小,24,2 变量和常量,2.5 实型变量,单精度: float 4字节(32位) 双精度: do

11、uble 8字节(64位) 例1:float x,y; /* 指定x、y为单精度实型变量 */ double z; /* 指定z为双精度实型变量 */注意:实型常量不分float和double。例2:float a; a=123456.711 注意:float型变量只能接受7位有效数字,最后两位数字不起作用。double 型变量能接受16位有效数字。,25,2 变量和常量,2.4 实型变量,实型变量的定义实例1main() float a; a=123456.76543; printf(a = %fn, a); 程序运行显示:a=123456.76525,26,2 变量和常量,2.4 整型变量

12、,实型变量的定义实例2main( )float a; double b;a = 33333.333333;b = 33333.33333333;printf(“a=%fnb=%fn”,a,b);程序运行显示:,27,补充:,基本数据类型数据的存储形式(续)实型变量的存储实型变量以浮点数指数形式存放字符型变量的存储 字符型变量存放字符ASCII码值,-0.314159*102,28,2 变量和常量,2.6 字符变量,字符变量用来存放一个字符常量.字符变量在内存中占一字节。变量赋初值:在定义变量的同时指定其初值。例1: char c1,c2; /* 定义c1、c2为字符变量 */ c1 = a;

13、c2 = b;例2: char c1=a;等效: char c1; c1=a;,29,2 变量和常量,2.5 字符变量,例3main() char c1,c2; c1 = 97; c2 = 98; printf(%c %c,c1,c2); 该例的输出是:a b注意:字符以ASCII码存储,其存储方式与整数类似。从而,C语言允许字符和整数之间进行运算。,相当于:c1 = a; c2 = b;因为:字符以ASCII码存放,a的ASCII码为97,b的ASCII码为98。,97,98,c1 c2,30,2 变量和常量,2.5 字符变量,例4P26main()char a,b; a=120;b=121

14、; printf(“%c,%cn%d,%dn”,a,b,a,b);程序运行显示:,31,2 变量和常量,2.5 字符变量,例5P26main()char a,b; a=x;b=y; a=a-32;b=b-32; printf(“%c,%cn%d,%dn”,a,b,a,b);程序运行显示:,32,2 变量和常量,2.6 变量初始化,在定义变量的同时指定其初值。例: int a = 3; float f = 3.56; char c = a; int a, b, c = 5; 注意:多个变量指定相同的初值。 int a = b = c = 3 ; int a = 3, b = 3, c = 3;

15、,33,2 变量和常量,2.7 各类数据类型混合运算,整型、实型(包括单、双精度)、字符型数据可以混合运算。例、 10 + a + 1.5 - 8765.1234 * b混合运算时,先转换成同一种类型,然后进行运算。转换规则如图所示。,34,2 变量和常量,2.7 各类数据类型混合运算,例: int i; float f; double d; long e; 10 + a + i*f - d/e,整型,双精度,此转换过程是由系统自动进行的。,35,3 运算符与表达式,运算:是对数据的加工处理的过程。,运算符:用来表示各种不同运算的符号。,表达式(Expression):是将运算量用运算符连接起

16、来组成的式子,其中的运算量可以是常量、变量或函数。,引例中的运算符与表达式,P29表2-3 C语言运算符分类,36,3 基本运算符与表达式,3.1 基本的算术运算,+、,/(除),%(求余),+(取正),(取负),课堂练习:比较5*4/2与5/2*4的结果如设m、n均为整型变量(n0),则m-m/n*n的结果是什么?-7/4、-8%5、8%-5结果是什么?,双目运算符,结合性为从左至右,单目运算符,结合性为从右至左,符号同被除数,37,3 基本运算符与表达式,3.2 算术表达式,算术表达式:用算术运算符和括号将运算对象连接起来、符合C语法规则的式子。如:a*b/c - 1.5 + a b*b-

17、4*a*c 3.1415926*r*r 运算符的优先级:先乘除、后加减;先括号。运算符的结合性:运算对象两侧的运算符优先级相同时,运算符的结合方向(左右)。左结合性:结合方向为从左至右(先左后右,简称左结合)。算术运算符为左结合。P31 表2.5右结合性:结合方向为从右至左(先右后左,简称右结合)。赋值运算符”=“为右结合。,例: a = b + c 由于赋值运算符=优先级低,先执行右边的b+c,再赋值给a。,38,3 基本运算符与表达式,3.3 赋值运算符和赋值表达式,1.赋值运算符:”=”。一般形式:变量名=表达式; 说明:1.”=“左边必须是变量名.2.”=“与数学中的含义不同,没有相等

18、的含义。X=x+13.在一个赋值表达式中,可出现多个”=“,右结合。,例: a = b =c=7; 相当于a=(b=(c=7);,练习: float a,b; a = b =34+a;,39,3 基本运算符与表达式,3.3 赋值运算符和赋值表达式,2.复合赋值运算符一般形式:变量名 双目运算符=表达式;等价于:变量名=变量名 双目运算符 表达式,例: a *= b +71; 相当于a=a*(b+71);,练习: a+=1;相当于:,3. 赋值表达式 自学 P33,40,3 基本运算符与表达式,3.3 赋值运算符和赋值表达式,2.复合赋值运算符一般形式:变量名 双目运算符=表达式;等价于:变量名

19、=变量名 双目运算符 表达式,例: a *= b +71; 相当于a=a*(b+71);,练习: a+=1;相当于:,3. 赋值表达式 自学 P33,41,3 基本运算符与表达式,3.3 赋值运算符和赋值表达式,课堂练习:1、a += 3; 等价语句 a = a + 3; 2、x *= y + 8; 等价语句 x = x*(y+8) 3、x %= 3; 等价语句 x = x % 3;4、x - =(y+2);等价语句 x=x -(y+2),42,3 基本运算符与表达式,3.4 逗号运算,表达式1,表达式2,表达式n,从左到右逐一计算各表达式,并以表达式n的值为逗号运算表达式的结果,课堂练习:假

20、设a=3,求表达式的值a=3*5,a*4(a=3*5,a*4),a+5,43,3 基本运算符与表达式,3.4 逗号运算,例: main() int a,b,c; a=2; b=(a,a*4); c=(5,4),a=5,10); printf(%d,%d,%dn,a,b,c); 注意:逗号可以作运算符,也可以作分隔符。,44,3 基本运算符与表达式,3.5 自增、自减运算符,+,-,+i:在使用i之前使i加1 i+:在使用i之后使i加1 -i:在使用i之前使i减1 i-:在使用i之后使i减1,课堂练习:如果x=4,分析下面表达式的结果:(x+)+(x+)(+x)+(+x),结果为:9。?,结果为

21、:11。?,45,3 基本运算符与表达式,3.5 自增、自减运算符,例main() int a; a = 3; printf(%d, a+); printf(%d, a); ,46,3 基本运算符与表达式,3.5 自增、自减运算符,提示:自增自减运算符特点:右结合性。自增自减运算符的运算对象只能是变量。,例: i = 3; j = +i; /* 先使i加1,再赋给j。*/ 执行后:j=4, i=4 i = 3; j = i+; /* 先把i赋给j,再使i加1。*/ 执行后:j=3,i=4 i = 3; j = (i+)+(i+)+(i+); 执行后:j=9, i=6 i = 3; j = (+

22、i)+(+i)+(+i); 执行后:j=18, i=6 注意:不要写成j+i形式。,47,3 基本运算符与表达式,3.5 自增、自减运算符(续),课堂练习:设i的值为2,表达式i+-1的值是多少?表达式执行以后,i的值是多少?设i的值为3,j的值为2,表达式-(i+)+(+j)的值是多少?表达式执行以后,i和j的值分别是多少?设i的值为5,表达式i/i+和i+/+i的值分别是多少?表达式执行以后,i的值分别是多少?,48,3 基本运算符与表达式,3.7 混合运算时数据类型的转换显式类型转换,(类型说明符) (表达式),(float) a 把a转换为实型 (int)(x+y) 把x+y的结果转换

23、为整型,返回主菜单,49,3 基本运算符与表达式,例: (double)a; /* 将a转换为double类型 */(int)(x+y); /* 将x+y的值转换为int类型 */(float)(5 % 3); /* 将5%3的值转换为float类型 */注意:(int)(x+y); /* 将x+y的值转换为int类型 */(int)x+y; /* 将x的值转换为int类型,再与y相加 */ (int) (x); (int) x; (表达式仅为一个变量时,括号可以省略) int (x); /* 变量x的类型不发生变化*/ 说明:强制类型转换时,得到一个所需类型的中间变量,原来变量的类型不发生变

24、化。,50,4 常用数学库函数,附录3,课堂练习:请根据附录3表格给出的函数,写出下面代数式对应的C语言表达式:,51,课堂作业:,2.1 指出下面哪些是合法的变量名: 123 abc a+b a_b pad ?12 Li_Li *P2.2 a在内存中占 个字节,“a”在在内存中占 个字节.2.3 写出下面程序的运行结果: main() char ch; ch=B; /*B的ascii码的值为66*/ printf(“%c,%dn”,ch,ch), 1 2B 66,52,2.4 写出下面程序的运行结果:main() int a=10, b , c , d ; a+=6; b = (c=20,

25、6, a+2 ); printf(a=%d,b=%d,c=%dn,a,b,c); ,运行结果:a=16,b=18,c=20,课堂作业:,53,2.5写出下面程序的运行结果: main() int a=4; int b,c; c=a+(b=2); a+=a-=a*a; printf(%d,%d,%dn,a,b,c); 2.6 写出下面程序的运行结果: main() int a,b,c=9; a=3,b=4; c%= a+b; printf(“%dn”,c) ,运行结果:-24,2,6运行结果:2,课堂作业:,54,2.7 写出下面程序的运行结果: main()int i,j,m,n;i=8;j=

26、10;m=+i;n=j+;printf(%d,%d,%d,%dn,i,j,m,n);,运行结果:9,11,9,10,课堂作业:,55,2.8 写出下面程序的运行结果: main()float x=5.4;int i;i=(int)x;printf(”x=%f,i=%dn,x,i);,运行结果:x=5.400000,i=5,课堂作业:,56,本讲小结,介绍了C语言的数据类型重点学习了的变量的定义及初始化重点学习了C语言的基本数据类型及存储形式重点学习了C语言的算术运算符及表达式介绍了C语言中常用的数学函数请同学们重点阅读教材附录B,57,作业,思考题教材P38-39,T1-3请大家准备程序设计方

27、法的资料,下次课课前讨论。重点理解结构化程序设计方法的有关知识作业教材P39 4(1),58,谢谢,59,引例中变量的定义,返 回,分析求n个数的平均值的算法,输入,处理,输出,int n;float num;float sum;int i;float avg;或者int n,i;float num,sum,avg;,60,sizeof使用示例,返 回,#include main() int i,j; long s; float a,b; double f1,f2; char ch; printf(%d,%d,%dn, sizeof(int),sizeof(i),sizeof(10); pri

28、ntf(%d,%dn, sizeof(long),sizeof(s); printf(%d,%dn, sizeof(50000),sizeof(10L); printf(%d,%d,%dn, sizeof(float),sizeof(b),sizeof(9.8F); printf(%d,%d,%dn, sizeof(double),sizeof(f1),sizeof(9.8); printf(%d,%dn, sizeof(char),sizeof(ch); printf(%d,%dn, sizeof(A),sizeof(101);,返 回,61,引例中的运算符和表达式,分析求n个数的平均值的算法,输入,处理,输出,#include main () int n=0,i=0; float num=0.0,sum=0.0,avg=0.0; scanf(%d,返 回,62,32个关键字:(系统定义,不能重作其它定义),返 回,63,字符集,字符(Character)是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。 常见字符集名称:ASCII字符集、GB2312字符集、BIG5字符集、 GB18030字符集、Unicode字符集等。,返 回,

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。