C语言ppt课件第2章

上传人:2127513****773577... 文档编号:240645164 上传时间:2024-04-27 格式:PPT 页数:36 大小:152.10KB
收藏 版权申诉 举报 下载
C语言ppt课件第2章_第1页
第1页 / 共36页
C语言ppt课件第2章_第2页
第2页 / 共36页
C语言ppt课件第2章_第3页
第3页 / 共36页
资源描述:

《C语言ppt课件第2章》由会员分享,可在线阅读,更多相关《C语言ppt课件第2章(36页珍藏版)》请在装配图网上搜索。

1、C语言程序设计南昌大学计算中心C语言程序设计南昌大学计算中心1第第2章章 C程序设计的初步知识程序设计的初步知识2.1 简单简单C语言程序的构成和格式语言程序的构成和格式例:求圆面积和周长的程序。例:求圆面积和周长的程序。#include#define PI 3.14main()float a,b,r;scanf(“%f”,&r);/请用户输入半径请用户输入半径/a=2 PI r;b=PI r r;printf(“a=%f,b=%fn”,a,b);/输出结果输出结果/南昌大学计算中心第2章 C程序设计的初步知识2.1 简单C语言程序的构成和2由上例总结出由上例总结出C程序结构:程序结构:1、C

2、程序是由程序是由函数函数构成的。构成的。2、一个、一个C程序有且只有一个程序有且只有一个main函数,即函数,即主函数主函数。3、C程序总是从程序总是从main函数开始执行,结束于函数开始执行,结束于main函数。函数。4、函数由函数首部、函数由函数首部(函数名、参数函数名、参数)和函数体和函数体(从从到到结束结束)组成,函数内有组成,函数内有语句语句(后面有分号后面有分号)。5、程序中可有注释、程序中可有注释(不会执行不会执行),注释部分用,注释部分用/和和/括括起来。起来。6、C程序书写格式很自由。程序书写格式很自由。南昌大学计算中心由上例总结出C程序结构:南昌大学计算中心32.2 标识符

3、、常量和变量标识符、常量和变量2.2.1 标识符标识符标识符:由标识符:由字母、下划线和数字字母、下划线和数字组成的字符序列,且组成的字符序列,且第一个字符必须是字母或下划线。第一个字符必须是字母或下划线。标识符的分类:标识符的分类:1、关键字:已被、关键字:已被C语言赋予语言赋予固定含义固定含义的标识符。书写的标识符。书写时必须用小写。时必须用小写。2、预定义标识符:被、预定义标识符:被C语言预先定义的特定标识符。语言预先定义的特定标识符。允许用户对它们重新定义。允许用户对它们重新定义。3、用户标识符:由用户根据需要定义的标识符。、用户标识符:由用户根据需要定义的标识符。区分区分大小写大小写

4、。南昌大学计算中心2.2 标识符、常量和变量南昌大学计算中心42.2.2 常量常量常量:程序运行过程中,其值不能被改变的量。常量:程序运行过程中,其值不能被改变的量。2.2.3 符号常量符号常量符号常量:用一个符号名代表一个常量。符号常量:用一个符号名代表一个常量。定义符号常量:使用事先编译预处理命令定义符号常量:使用事先编译预处理命令define定义。定义。格式:格式:#define 标识符标识符 常量常量编译时先由系统替换为它所代表的常量,再进行编译。编译时先由系统替换为它所代表的常量,再进行编译。南昌大学计算中心2.2.2 常量南昌大学计算中心5练习:下列程序的执行结果是练习:下列程序的

5、执行结果是_。#include#define sum 10+20main()int b=0,c=0;b=5;c=sum*b;printf(%d,c);A)100 B)110 C)70 D)150 南昌大学计算中心练习:下列程序的执行结果是_。南昌大学计算中心6练习:下列程序的执行结果是练习:下列程序的执行结果是_。#include#define sum(10+20)main()int b=0,c=0;b=5;c=sum*b;printf(%d,c);A)100 B)110 C)70 D)150 南昌大学计算中心练习:下列程序的执行结果是_。南昌大学计算中心72.2.4 变量变量变量:程序运行过

6、程中,其值可以改变的量。变量:程序运行过程中,其值可以改变的量。变量应遵循变量应遵循“先定义后使用先定义后使用”的原则。的原则。变量定义示意:变量定义示意:.125a变量变量a的存储单元的存储单元南昌大学计算中心2.2.4 变量.125a变量a的存储单元南昌大学计算中心82.3 整型数据整型数据2.3.1 整型常量整型常量十进制:由数字十进制:由数字0 9组成。组成。八进制:由数字八进制:由数字0 7组成,组成,必须以必须以0开头开头。十六进制:由数字十六进制:由数字0 9以及以及AF(不区分大小写不区分大小写)构成,构成,必必须以须以0 x或或0X开头开头。2.3.2 整型变量整型变量包括基

7、本型、短整型、长整型和无符号型四种。包括基本型、短整型、长整型和无符号型四种。如:如:int a;/定义基本型整型变量定义基本型整型变量a a/如:如:int a=3;/定义基本型整型变量定义基本型整型变量a,a,同时赋整数同时赋整数3 3/注意:注意:VC6.0为一个基本型整型变量开辟为一个基本型整型变量开辟4个字节的内存单个字节的内存单元,如上例中的变量元,如上例中的变量a。南昌大学计算中心2.3 整型数据南昌大学计算中心92.3.3 整型数据的分类整型数据的分类1、基本型、基本型(int):占占4个字节。个字节。2、短整型、短整型(short int):占占2个字节。个字节。3、长整型、

8、长整型(long int):占占4个字节。个字节。4、无符号型、无符号型(unsigned):unsigned int:占占4个字节;个字节;unsigned short:占占2个字节;个字节;unsigned long:占占4个字个字节。无符号型必为非负数。节。无符号型必为非负数。注意:整型常量一般默认为基本型,但可用注意:整型常量一般默认为基本型,但可用U或或L(或小写或小写)加加在常量后面以改变其类型。在常量后面以改变其类型。如:如:137L、0L、729U、0 xffL南昌大学计算中心2.3.3 整型数据的分类南昌大学计算中心102.3.4 整数在内存中的存储形式整数在内存中的存储形式

9、(二进制形式,最高位为符号二进制形式,最高位为符号位位)1、正整数:、正整数:“原码原码”形式存放。形式存放。如:如:short int a=5;上述语句指在内存中开辟一个上述语句指在内存中开辟一个2个字节的单元,单元名为个字节的单元,单元名为a,并存放整数并存放整数5的二进制代码。代码为:的二进制代码。代码为:0000 0000 0000 0101最高位为最高位为0,表示正整数,表示正整数因此:因此:short型整数最大值为型整数最大值为32767,即,即0111 1111 1111 1111。南昌大学计算中心2.3.4 整数在内存中的存储形式(二进制形式,最高位为符号112、负整数:、负整

10、数:“补码补码”形式存放。形式存放。如:如:short int a=-5;上述语句指在内存中开辟一个上述语句指在内存中开辟一个2个字节的单元,单元名为个字节的单元,单元名为a,并存放整数并存放整数-5的二进制代码。代码为:的二进制代码。代码为:1111 1111 1111 1011,此为补码形式。此为补码形式。得到补码的方法:得到补码的方法:(1)求原码的反码:求原码的反码:把原码除符号位之外的二进制码按位取把原码除符号位之外的二进制码按位取反反。如:如:-5的原码:的原码:1000 0000 0000 0101 -5的反码:的反码:1111 1111 1111 1010(2)把所得的反码加把

11、所得的反码加1,即为补码,即为补码。如:如:-5的反码:的反码:1111 1111 1111 1010 加加1后后,补码:补码:1111 1111 1111 1011南昌大学计算中心2、负整数:“补码”形式存放。南昌大学计算中心12由补码还原成十进制负整数的方法:由补码还原成十进制负整数的方法:(1)把补码的除符号位之外的各位取反把补码的除符号位之外的各位取反。如:如:-5的补码:的补码:1111 1111 1111 1011 取反后:取反后:1000 0000 0000 0100(2)把所得的二进制数转换成十进制负整数把所得的二进制数转换成十进制负整数。如:上例中的:如:上例中的:1000

12、0000 0000 0100 转换后得:转换后得:-4(3)对所得十进制数再减对所得十进制数再减1。如:上例中的如:上例中的-4:-4-1得得-5南昌大学计算中心由补码还原成十进制负整数的方法:南昌大学计算中心133、无符号整数:、无符号整数:为非负数,最高位不为符号位为非负数,最高位不为符号位。如:如:unsigned short a=5;上述语句指在内存中开辟一个上述语句指在内存中开辟一个2个字节的单元,单元名为个字节的单元,单元名为a,并存放整数并存放整数5的二进制代码。代码为:的二进制代码。代码为:0000 0000 0000 0101,此为原码形式。此为原码形式。不是符号位不是符号位

13、再如:再如:unsigned short a=65535;上述语句指在内存中开辟一个上述语句指在内存中开辟一个2个字节的单元,单元名为个字节的单元,单元名为a,并存放整数并存放整数65535的二进制代码。代码为:的二进制代码。代码为:1111 1111 1111 1111,此为原码形式。此为原码形式。不是符号位不是符号位南昌大学计算中心3、无符号整数:为非负数,最高位不为符号位。不是符号位再如:14练习:已知练习:已知short x=0 xabcde;则则x的结果是的结果是 _。A)赋值非法赋值非法 B)不确定不确定C)abcd D)bcde 南昌大学计算中心练习:已知short x=0 xa

14、bcde;则x的结果是 _15练习:若定义了练习:若定义了short a=32768;执行语句执行语句printf(“a=%d”,a);后的输出结果是后的输出结果是 _。A)a=-32768 B)a=-1 C)a=32768 D)数据类型不一致,出错数据类型不一致,出错 南昌大学计算中心练习:若定义了short a=32768;执行语句print16练习:设练习:设short i=65539;执行语句执行语句printf(“%d”,i);后的后的输出结果是输出结果是 _。A)-3 B)3 C)65539 D)数据不确定数据不确定 南昌大学计算中心练习:设short i=65539;执行语句pr

15、intf(“172.4 实型数据实型数据2.4.1 实型常量实型常量(或称实数、浮点数或称实数、浮点数)十进制小数形式:由数字十进制小数形式:由数字0 9和小数点组成。和小数点组成。小数点不可小数点不可省略省略。如:。如:6.55、0.0、0.39、.39、40.指数形式:由指数形式:由尾数加阶码标志尾数加阶码标志e或或E以及阶码组成。其一般以及阶码组成。其一般形式为形式为a En(a为尾数,为尾数,n为阶码)其值为为阶码)其值为 a10n。阶码必阶码必须是整数,须是整数,E前面必须要有数字。前面必须要有数字。如:如:3.5 106可以表示为可以表示为3.5E6 2.8 10-2可以表示为可以

16、表示为2.8E-2南昌大学计算中心2.4 实型数据南昌大学计算中心182.4.2 实型变量实型变量单精度型:用单精度型:用float定义,分配定义,分配4个字节存储空间。个字节存储空间。双精度型:用双精度型:用double定义,分配定义,分配8个字节存储空间。个字节存储空间。2.5 算术表达式算术表达式2.5.1 基本的算术运算符基本的算术运算符+、-、/、%属于双目运算符属于双目运算符(运算符需要两个运算对象运算符需要两个运算对象)。%的运算对象只能是整数,结果正负号同被除数。的运算对象只能是整数,结果正负号同被除数。若两边运算数类型一致,所得结果类型与运算数类型一致。若两边运算数类型一致,

17、所得结果类型与运算数类型一致。如:如:1.7+2.3结果为结果为4.0,不是,不是4 2.5/0.5 结果为结果为5.0,不是,不是5 3/6结果为结果为0,不是,不是0.5或两边运算数类型不一致,系统将自动进行类型转换,使或两边运算数类型不一致,系统将自动进行类型转换,使得两边运算数类型一致,转换规律见附录得两边运算数类型一致,转换规律见附录5。南昌大学计算中心2.4.2 实型变量2.5 算术表达式南昌大学计算中心192.5.2 运算符的优先级、结合性和算术表达式运算符的优先级、结合性和算术表达式1、算术运算符的优先级、算术运算符的优先级()+-+-*/%+-同级 同级 同级 单目单目 双目

18、双目 高高高高 低低低低2、算术运算符和圆括号的结合性、算术运算符和圆括号的结合性算术运算符的结合性是从左到右算术运算符的结合性是从左到右(除了表示正负号的除了表示正负号的+、-是从右到左是从右到左)。若有圆括号则优先进行圆括号中的运算。若有圆括号则优先进行圆括号中的运算。南昌大学计算中心2.5.2 运算符的优先级、结合性和算术表达式()203、算术表达式、算术表达式把算术运算符和运算数连接起来的表达式称为算术表达式。把算术运算符和运算数连接起来的表达式称为算术表达式。表达式都有运算结果,即表达式值表达式都有运算结果,即表达式值。2.5.3 强制类型转换表达式强制类型转换表达式(类型符类型符)

19、(表达式表达式)即强行把表达式值转换成所需类型。即强行把表达式值转换成所需类型。如:如:(float)(5/3)(int)(a)或或(int)a南昌大学计算中心3、算术表达式南昌大学计算中心21练习:下面程序的输出结果是练习:下面程序的输出结果是_。main()int x;x=-3+4*5-6;printf(“%d”,x);x=3+4%5-6;printf(“%d”,x);x=-3*4%-6/5;printf(“%d”,x);x=(7+6)%5/2;printf(“%d”,x);A)11 1 0 1 B)11 3 2 1C)12 3 2 1 D)11 1 2 1 南昌大学计算中心练习:下面程序

20、的输出结果是_。南昌大学计算中心22练习:练习:若有如下定义若有如下定义:inta=2,b=3;floatx=3.5,y=2.5;则表达式:则表达式:(float)(a+b)/2+(int)x%(int)y的值是的值是_。A2.500000B3.500000C4.500000D5.000000 南昌大学计算中心练习:若有如下定义:int a=2,b=3;float 232.6 赋值表达式赋值表达式2.6.1 赋值运算符和赋值表达式赋值运算符和赋值表达式赋值运算符:赋值运算符:=赋值表达式格式:赋值表达式格式:变量名变量名=表达式表达式作用是把右侧表达式的值赋给左边的变量,作用是把右侧表达式的值

21、赋给左边的变量,整个表达式的值整个表达式的值就是左侧变量的值就是左侧变量的值。“=”是双目运算符,右结合性,优先级仅高于逗号运算符。是双目运算符,右结合性,优先级仅高于逗号运算符。如:如:a=5 a=b=8/3南昌大学计算中心2.6 赋值表达式南昌大学计算中心242.6.2 复合赋值表达式复合赋值表达式C语言提供了语言提供了10种复合的赋值运算符,它们是种复合的赋值运算符,它们是+=,-=,*=,=,%=,=,&=,=,|=其其中中前前5个个是是复复合合的的算算术术赋赋值值运运算算符符,后后5个个是是复复合合的的位位运运算算赋赋值值运运算算符符。复复合合的的赋赋值值运运算算符符是是双双目目运运

22、算算符符,优优先先级级和赋值运算符相同,也是右结合性的。和赋值运算符相同,也是右结合性的。它等效于它等效于=例如:例如:a+=5 等价于等价于a=a+5x*=y+7 等价于等价于x=x*(y+7)南昌大学计算中心2.6.2 复合赋值表达式南昌大学计算中心25练习:设有以下定义,则能使值为练习:设有以下定义,则能使值为3的表达式是的表达式是_。int k=7,x=12;A)x%=(k%=5)B)x%=(k-k%5)C)x%=k D)(x%=k)-(k%=5)南昌大学计算中心练习:设有以下定义,则能使值为3的表达式是_。南昌26练习:下面程序的输出结果是练习:下面程序的输出结果是_。main()i

23、nt a=0;a+=(a=8);printf(“%dn”,a);1616 南昌大学计算中心练习:下面程序的输出结果是_。16 南昌大学计算中心27练习:下面程序的输出结果是练习:下面程序的输出结果是_。main()int x=2,y=0,z;x*=3+2;printf(“%d”,x);x*=y=z=4;printf(“%d”,x);A)8 40 B)10 40 C)10,4 D)8,4 南昌大学计算中心练习:下面程序的输出结果是_。南昌大学计算中心282.6.3 赋值运算中的类型转换赋值运算中的类型转换当当赋赋值值表表达达式式中中左左右右两两边边类类型型不不一一致致时时,会会遵遵循循自自动动转

24、转换换规规则:则:右侧表达式的值按左侧变量的类型进行转换右侧表达式的值按左侧变量的类型进行转换。如:假设变量如:假设变量a为整型为整型 a=3.5 的结果为的结果为3,即变量,即变量a的内容为的内容为3注意整型之间的转换,参见书上。注意整型之间的转换,参见书上。南昌大学计算中心2.6.3 赋值运算中的类型转换南昌大学计算中心292.7 自加、自减运算和逗号运算符自加、自减运算和逗号运算符2.7.1 自加运算符自加运算符“+”和自减运算符和自减运算符“-”是单目运算符,与变量结合,作用是使变量值增是单目运算符,与变量结合,作用是使变量值增1或减或减1。有前缀和后缀两种形式:有前缀和后缀两种形式:

25、前缀形式前缀形式:先自增先自增(自减自减)再引用再引用;后缀形式后缀形式:先引用再自增先引用再自增(自减自减);如:假设变量如:假设变量a为为5a+则则a为为6,表达式值为,表达式值为5+a 则则a为为6,表达式值为,表达式值为6具有右结合性,结合方向为从右到左。具有右结合性,结合方向为从右到左。如:如:a+等价于等价于 -(a+)南昌大学计算中心2.7 自加、自减运算和逗号运算符南昌大学计算中心30练习:设有练习:设有int x=11;则表达式则表达式(x+*1/3)的值是的值是_。A)3B)4C)11D)12 南昌大学计算中心练习:设有int x=11;则表达式(x+*1/3)的值是31练

26、习:下面程序的输出结果是练习:下面程序的输出结果是_。main()int m=12,n=34;printf(“%d%d”,m+,+n);printf(“%d%dn”,n+,+m);A)12353514B)12353513C)12343514D)12343513 南昌大学计算中心练习:下面程序的输出结果是_。南昌大学计算中心32练习:下面程序的输出结果是练习:下面程序的输出结果是_。main()int i,j;i=16;j=(i+)+i;printf(“%d”,j);i=15;printf(“%d%d”,+i,i);A)32 16 15B)33 15 15C)34 15 16D)34 16 15

27、 南昌大学计算中心练习:下面程序的输出结果是_。南昌大学计算中心332.7.2 逗号运算符和逗号表达式逗号运算符和逗号表达式逗号逗号“,”也是一种运算符,优先级别最低。也是一种运算符,优先级别最低。逗号表达式:逗号表达式:表达式表达式1,表达式,表达式2,表达式,表达式n从左向右,依次对表达式求值,最后得到表达式从左向右,依次对表达式求值,最后得到表达式n 的值就是的值就是逗号表达式的值。逗号表达式的值。如:如:a=8,a+,a%5 表达式的值为表达式的值为4,且,且a为为9 b=5,b+2,b+表达式的值为表达式的值为5,且,且b为为6 y=(c=23,c 6)赋值表达式的值为赋值表达式的值

28、为36,且,且y为为36,c为为6南昌大学计算中心2.7.2 逗号运算符和逗号表达式南昌大学计算中心34练习:设以下变量均为练习:设以下变量均为int类型,表达式的值不为类型,表达式的值不为7的是的是_。A)(x=y=6,x+y,x+1)B)(x=y=6,x+y,y+1)C)(x=6,x+1,y=6,x+y)D)(y=6,y+1,x=y,x+1)南昌大学计算中心练习:设以下变量均为int类型,表达式的值不为7的是_35练习:下面程序的输出结果是练习:下面程序的输出结果是_。main()int a=21,b=11;printf(“%dn”,-a+b,-b+a);A)30B)31C)32D)33 逗号表达式逗号表达式南昌大学计算中心练习:下面程序的输出结果是_。逗号表达式南昌大学计36

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!