数据类型运算符与表达式ppt课件.ppt
《数据类型运算符与表达式ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据类型运算符与表达式ppt课件.ppt(48页珍藏版)》请在三一办公上搜索。
1、数据类型、运算符与表达式,西南财经大学经济信息工程学院刘家芬,C语言大学实用教程,例2.1 第一个C程序,#include void main()printf(“This is a program.n”);,编译预处理命令导入stdio.h:标准输入输出头文件,C程序的主函数,每个C程序有且仅有一个主函数,void表示主函数不返回任何值。,是stdio.h中定义的标准输出函数,用于在屏幕上显示。,()中就是需要输出的内容,将用“”引起来的字符串原样显示在屏幕上即可,n是一个特殊的字符,称为转义字符。用于控制光标移动到下一行,例2.2 第二个C程序,#include void main()int
2、 a,b,sum;a=123;b=456;sum=a+b;printf(sum is%dn,sum);,编译预处理命令导入stdio.h:标准输入输出头文件,C程序的主函数,每个C程序有且仅有一个主函数,void表示主函数不返回任何值。,定义了三个变量,名字分别是a,b,sum.这三个变量都是int型。,给变量a赋值123,实际上就是向该内存单元放入值123;给变量b赋值456.,变量sum的值是变量a的值加上变量b的值;,调用stdio.h中的printf函数,在屏幕上显示计算结果。首先原样输出sum is,后面的%d是格式控制符,表示“以十进制整数形式输出”变量sum的值,例2.3 第三个
3、C程序,#include void main()int max(int x,int y);int a,b,c;scanf(%d,%d,声明后面的语句中将使用一个用户自定义的函数max,该函数使用两个整型参数,并且返回一个整型值,使用stdio.h中定义的标准库函数scanf,从键盘读取两个十进制整数,分别赋值给a和b,以a和b作为参数调用用户自定义函数max,并且将该函数的返回值赋给变量c,使用stdio.h中定义的标准输出库函数pintf,这里是函数max的定义部分,该函数使用两个整型参数x和y,作用是找出x和y中较大的值并返回给主程序,C程序的特点,函数是程序的基本单位主函数用户自定义函数
4、系统提供的库函数函数由函数头和函数体组成函数头包括返回值类型、函数名、形式参数列表函数体 由语句;组成,常量(Constant),程序运行过程中保持固定值的数据,根据类型分为:整型常量如5,程序2中的123,456实型常量如4.6,-1.23,1e-4字符常量如5,c,/n字符串常量如“5”和程序1中的“This is a program.”符号常量(宏常量)#define PI=3.1415926 枚举常量 enum enum responseyes,no;enum response answer;answer=yes;,变量(Variable),在程序执行过程中值会发生改变的量变量名代表着
5、内存中的一个存储单元,里面存放的就是变量的值。怎么给变量起名字呢?标识符的命名规则由英文字母、数字和下划线组成,只能以字母和下划线开头。不允许使用关键字作为标识符的名字。区分大小写 除了变量名外,符号常量、自定义函数、数组等的名字也都是标识符,简单地说,标识符就是用户在程序中起的一个名字。,123,456,我的名字叫a,我的名字叫b,变量使用的原则,使用变量的基本原则先定义,后使用编译时确定该变量所占用的内存单元的大小编译时进行合法性检查例如%求余运算要求两个操作数均为int型。一条定义语句可定义若干个同类型的变量,以逗号分隔定义后没有赋初值的变量,其值为随机数例2中先定义,然后再赋初值 in
6、t a,b,sum;a=123;b=456;也可以在定义的同时初始化char esc=a;int i=1;,数据的类型,数据为什么要区分类型?不同类型的数据代表不同的数据表示形式合法的取值范围占用内存空间大小可参与的运算种类 常用数据类型有整型、浮点型、字符型等,整型数据之整型常量,十进制整数18、-31八进制整数以0开头,数取0-7如022,-037,注意区分022和22的值十六进制整数以0 x开头,数取0-F或者0-f0 x12,-0 x1f整型常量的后缀无后缀为基本整型L或者l,表示long长型,占用比基本整型更长的存储单元,如 123占用两个字节,123l、123L占用4个字节,但数值
7、一样。U或者u,表示unsigned无符号,只能表示正数,涉及最高位的意义。,0XA5Lu,整型数据之整型变量,数据在内存中以二进制的补码形式存放。正数的补码和原码相同。负数的补码:将该数绝对值的二进制形式,按位取反再加1。例:求-10的补码 10的原码取反再加1就得到了-10的补码,-10,整型变量的分类,根据所占内存大小基本型:类型说明符为int,占2个字节。短整型:类型说明符为short int或short。完全等同于基本型。长整型:类型说明符为long int或long,在内存中占4个字节。根据是否有正负符号有符号,修饰符signed。默认为signed,可省略不写无符号,修饰符uns
8、igned两种分类方法交叉组合成六种整型变量,signed VS unsigned,signed与unsigned型的区别:signed的最高位代表符号,0为正,1为负unsigned的最高位也代表数值以基本整型int为例,signed int和unsigned int都是占用两个字节,但表示范围不同。有符号整型量signed int,最大表示=32767无符号整型量unsigned int=65535,整型变量的取值范围,如果超出了该变量的取值范围,会出现什么情况呢?,溢出!,例2.4 溢出举例,#include void main()int i,j,m,n;i=32767;j=i+1;m=
9、-32768;n=m-1;printf(i=%d,j=%dn,i,j);printf(m=%d,n=%dn,m,n);,溢出(Overflow),C语言直接提供的任何类型都有取值范围。当向其赋超过此范围的数值,就会产生数值溢出,得到一个不正确的结果。int 型数32767在内存中的表示方法:加1补码解释为-32768如何避免类似的错误?,typeoverflow.c,浮点型数据之浮点型常量,浮点数就是实数,有两种表示形式十进制小数形式0.0、25.0、5.789、0.13、5.0、300.、-267.8230必须有小数点指数形式如2.1e5、-2.8E-2等。E之前必须有数字,并且指数部分为整
10、数。例:123.456可以表示为:123.456e0,12.3456e1,1.23456e2,0.123456e3,0.0123456e4后缀为“f”或“F”表示该数为单精度浮点数365是浮点数吗?365.是浮点数吗?365.00是浮点数吗?365f是浮点数吗?,浮点型数据的存放,浮点型数据在内存中以指数形式存放N=S2j,所占位数决定实数的取值范围,所占位数决定实数的精度,例2.5关于实数的输出,#include main()float f=123.456;printf(f in decimal:%fn,f);printf(f in exponent:%en,f);,浮点型变量的分类,单精度
11、(float型)占用4个字节,有效数字7位双精度(double型)占用8个字节,有效数字16位长双精度(long double型)占用16个字节,较少使用什么是有效数字?回顾例2.5的执行结果注意:浮点型常量都作为双精度来处理,例 2.6 float型的有效位数,#include stdio.hmain()float a;double b;a=123456.789e4;b=123456.789e4;printf(%fn%fn,a,b);,float型中通常用位来存放以二进制表示的尾数部分。将一个较大的十进制小数转化成二进制,通常都会超出位的长度,所以在内存中存放时会舍去后面的小数。之后读取时,
12、按照二进制到十进制的转换规则,输出的就不再是之前赋予的值了。,字符型数据之字符常量,字符常量是用单引号括起来的一个字符。如a,A,5,%,$等转义字符是一种特殊的字符常量。转义字符以反斜线开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。,常见转义字符,101表示?,字符型数据之字符变量,字符变量代表内存中的一个存储单元,长度为一个字节,用来存放一个字符 char c1,c2;c1=A;c2=a;,字符型数据在内存中的形式,字符型数据是以其ASCII码值的形式存放在内存单元之中的。char c1,c2;c1=A;c2=a;字符型数据可以作为取值范围0-2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据类型 运算 表达式 ppt 课件
链接地址:https://www.31ppt.com/p-5353580.html