《C语言程序设计实用教程》课件第2章 顺序结构程序设计.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《C语言程序设计实用教程》课件第2章 顺序结构程序设计.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计实用教程 C语言程序设计实用教程课件第2章 顺序结构程序设计 语言程序设计 实用教程 课件 顺序 结构 程序设计
- 资源描述:
-
1、2.1 C程序结构程序结构2.2 数据的机内表示和存储数据的机内表示和存储2.3 数据类型数据类型2.4 常量常量2.5 变量变量2.6 操作数存储空间的大小操作数存储空间的大小sizeof2.7 常变量与符号常量常变量与符号常量2.8 算术运算符与算术表达式算术运算符与算术表达式2.9 赋值运算符与赋值表达式赋值运算符与赋值表达式2.10 逗号运算与逗号表达式逗号运算与逗号表达式2.11 运算符的优先级与结合性运算符的优先级与结合性2.13 语句和块语句和块2.14 指针与指针变量指针与指针变量2.15 数据的输入与输出数据的输入与输出2.16 顺序结构程序设计综合举例顺序结构程序设计综合举
2、例n举例介绍举例介绍C语言的程序结构。语言的程序结构。n例例2-1 从键盘输入半径,求圆的周长和面从键盘输入半径,求圆的周长和面积。积。2.1 C程序结构程序结构算法算法思路思路:从键盘输入半径送给从键盘输入半径送给 redius 计算周长计算周长:perimeter=2*redius*PI;计算面积:计算面积:area=PI*redius*redius,输出输出perimeter和和area的值的值#include double PI=3.14;void main()int redius;double perimeter,area;printf(“Input a redius:”);scan
3、f(%d,&redius);perimeter=2*redius*PI;area=PI*redius*redius;printf(The perimeter is%.2f,The area is%.2fn,perimeter,area);声明变量redius提示输入输入数据赋给redius计算周长和面积输出结果预处理命令全局变量声明函数定义C源程序由三个要素组成源程序由三个要素组成:(1)预处理命令预处理命令。C编译程序对源程序编译前,先由预编译程序对源程序编译前,先由预处理器对预处理命令进行预处理。处理器对预处理命令进行预处理。(2)全局声明全局声明。包括全局变量声明和函数原型声明。包括全局
4、变量声明和函数原型声明。(3)函数定义函数定义。一个。一个C语言程序由一个或多个函数组成语言程序由一个或多个函数组成的的,其中只能有一个其中只能有一个main函数。函数。函数由一组语句组成。函数由一组语句组成。比语句更小的语法单位:表达式、变量、常量和关比语句更小的语法单位:表达式、变量、常量和关键字等。键字等。2.1 C程序结构程序结构n大小写的英文字母:大小写的英文字母:A A Z Z,a a z zn数字字符:数字字符:0 0 9 9n特殊字符:特殊字符:空格空格!%&_ _(下划线下划线)+*=-/“;.,()2.1.1 C字符集字符集2.1.2 词法记号词法记号n关键字关键字:C:C
5、语言预定义的单词语言预定义的单词n标识符标识符:标识符是编程人员自己定义的单词。标识符是编程人员自己定义的单词。用以用以命名程序正文中的一些实体。命名程序正文中的一些实体。如如:变量名、常量名、函数名变量名、常量名、函数名n文文 字字:文字是在程序中直接使用符号表示的数据文字是在程序中直接使用符号表示的数据.包括包括:数字、字符、字符串等数字、字符、字符串等 如如:123:123,4.564.56,A A,”HelloHello”n操作符操作符:用于各种运算的符号,如:用于各种运算的符号,如:+,-,*,n分隔符分隔符:用于分隔各个词法记号或程序正文用于分隔各个词法记号或程序正文.如:(如:(
6、),:;n空白符空白符:用于指示单词的开始和结束位置。用于指示单词的开始和结束位置。如:空格(如:空格(spacespace)、制表符()、制表符(TABTAB键产生的字符)、键产生的字符)、换行符(换行符(Enter Enter 键所产生的字符)和注释。键所产生的字符)和注释。auto break case char continue const default double do else float for if int long NULL return switch shortsigned true this unsigned void whilen关键字关键字:keywords是是C
7、语言预定义的单词,语言预定义的单词,又称保留字又称保留字(reserved words)。这些单词在程。这些单词在程序中具有不同的使用目的。序中具有不同的使用目的。2.1.2 词法记号词法记号标识符标识符(identifier)标识符的构成规则标识符的构成规则:以字母、下划线以字母、下划线(_)开始开始 以大写字母、小写字母、下划线以大写字母、小写字母、下划线(_)或数字或数字09组成。组成。不能是不能是c的关键字。的关键字。大写字母和小写字母代表不同的标识符。大写字母和小写字母代表不同的标识符。标识符的长度是任意的标识符的长度是任意的 identifier,userName,User_Nam
8、e,identifier,userName,User_Name,_sys_value,change,_sys_value,change,2mail,room#,int2mail,room#,int合法的标识符非法的标识符标识符作用标识符作用:用于标记程序代码中的名字用于标记程序代码中的名字:变量名、常量变量名、常量名、函数名等。名、函数名等。2.2 数据的机内表示和存储数据的机内表示和存储2.2.1 二进制、八进制、十六进制2.2.2 原码和反码2.2.3 补码-有符号整数的机内表示形式2.2.4 浮点数的机内表示形式2.2.1 二进制、八进制、十六进制二进制、八进制、十六进制1.二进制、八进
9、制和十六进制二进制、八进制和十六进制n数据在计算机内部都是以数据在计算机内部都是以二进制形式二进制形式存储的存储的n常用的进制常用的进制:n十进制十进制n二进制二进制n八进制八进制n十六进制十六进制 n十进制:十进制:基数基数:10,十个数字:,十个数字:09,逢,逢10进进1 n二进制:二进制:基数基数2,两个数字:,两个数字:0和和1,每位的权是,每位的权是以以 2为底的幂。为底的幂。102210写成二进位制成为写成二进位制成为11 1111 111022.2.1 二进制、八进制、十六进制二进制、八进制、十六进制2.2.1 二进制、八进制、十六进制二进制、八进制、十六进制102210=11
10、 1111 11102 =17768 =3fe161 111 111 110 三位一组三位一组11 1111 1110 四四位一组位一组2.2.1 二进制、八进制、十六进制二进制、八进制、十六进制102510=?2=?16 =?8思考:思考:2.2.1 二进制、八进制、十六进制二进制、八进制、十六进制2.进制之间的转换进制之间的转换n十进制转换成十进制转换成R进制(进制(R为二、八、十六)为二、八、十六),采用采用除除R取余法。取余法。n十进制数转换为二进制:十进制数转换为二进制:除除2取余法取余法4110=1010012 2.2.1 二进制、八进制、十六进制二进制、八进制、十六进制3.数据的
11、存储度量单位数据的存储度量单位8 bit=1 Byte 字节 1024 B=1 KB(KiloByte)1024 KB=1 MB(MegaByte)兆字节1024 MB=1 GB(GigaByte)吉字节1024 GB=1 TB(TeraByte)太字节1024 TB=1 PB(PetaByte)拍字节1024 PB=1 EB(ExaByte)艾字节1024 EB=1 ZB(ZetaByte)皆字节1024 ZB=1 YB(YottaByte)佑字节1024 YB=1 BB(Brontobyte)珀字节1024 BB=1 NB(NonaByte)诺字节1024 NB=1 DB(DoggaByt
12、e)刀字节2.2.1 二进制、八进制、十六进制二进制、八进制、十六进制2.2 原码、反码和补码原码、反码和补码n原码:符号位原码:符号位+二进制数二进制数 25原原 =+00011001 -25原原=-00011001n反码:对二进制数的每一位求反反码:对二进制数的每一位求反 11001011反反=001101002.2.3 补码补码-有符号整数的机内表示形式有符号整数的机内表示形式1.1.求补码的方法求补码的方法1 1n用用1Byte表示表示的机器数据的补码:的机器数据的补码:XX补补 =X =X 当当 X X 0 2 28 8-|X|-|X|当当 X0 X3 int a=23;变量变量a
13、a的值为的值为false false,通常表示,通常表示0 0 2.5 变量变量 variablen变量变量:在程序的运行过程中数值可变的数据在程序的运行过程中数值可变的数据,用来记录运算中间结果或保存数据。用来记录运算中间结果或保存数据。n2.5.1 变量的声明变量的声明数据类型 变量名1,变量名2,变量名n;short,int,long,short,int,long,float,double,char,unsignedfloat,double,char,unsigned 复合类型复合类型例如:int a;float r,area;r=4.5;area=3.14159*r*r;2.5 变量变
14、量 variablen变量变量:在程序的运行过程中数值可变的数据在程序的运行过程中数值可变的数据,用来记录运算中间结果或保存数据。用来记录运算中间结果或保存数据。n2.5.1 变量的声明变量的声明n2.5.2 变量的初始化变量的初始化2.5 变量变量 variablen2.5.1 变量的声明变量的声明数据类型 变量名1,变量名2,变量名n;short,int,long,short,int,long,float,double,char,unsignedfloat,double,char,unsigned 复合类型复合类型例如:int a;float r,area;r=4.5;area=3.141
15、59*r*r;2.5 变量变量 variablen变量变量与与内存空间分配:内存空间分配:编译时,对变量编译时,对变量声明语声明语句将根据其类型分配存储空间。句将根据其类型分配存储空间。n变量的名对应着空间的地址,变量的值对应着变量的名对应着空间的地址,变量的值对应着空间的内容。空间的内容。例如:例如:int num,total;double d1;给变量分配 空间 num:(2000)total:(3000)d1:(4000)4字节8字节4字节基本类型与变量的分配空间基本类型与变量的分配空间(visual c+环境下)环境下)数据类型数据类型关键字关键字占用位数占用位数短整型短整型short
16、short1616整型整型intint3232长整型长整型longlong3232浮点型浮点型floatfloat3232双精度浮点型双精度浮点型doubledouble6464字符型字符型charchar8 82.5.1 变量的声明变量的声明例如:例如:short s;/给给s变量分配两个字节,占用变量分配两个字节,占用2000-2001单元单元 s=0 x1234;图图2-1 变量与内存单元的映射关系变量与内存单元的映射关系2.5.1 变量的声明变量的声明 例如:int num;num=1;num=2;n通过赋值语句改变变量的值通过赋值语句改变变量的值num:1t1 时刻时刻num:2t2
17、 时刻时刻2.5.1 变量的声明变量的声明例如:int num,total;double d1;给变量分配 空间num:total:d1:n变量遵照变量遵照 “先声明后使用先声明后使用”原则原则num=5;total=2*num;d1=-234.45;num=6;K=90;Num=J+90+num;510-234.456变量名变量名和和变量值变量值的概念的概念2.5.1 变量的声明变量的声明1.整型变量与整型类型整型变量与整型类型nshort、int和和long:都有符号类型,:都有符号类型,n整型类型前可整型类型前可加加signed和和unsigned修饰。修饰。nsigned(默认):有符
18、号型默认):有符号型nunsigned:无符号型:无符号型2.5.1 变量的声明变量的声明扩充的整型类型:扩充的整型类型:n有符号基本整型有符号基本整型 signed int;n无符号基本整型无符号基本整型 unsigned int;n有符号短整型有符号短整型 signed short int;n无符号短整型无符号短整型 unsigned short int;n有符号长整型有符号长整型 signed long int;n无符号长整型无符号长整型 unsigned long int;n长长整型长长整型 long long int1.整型变量与整型类型整型变量与整型类型2.5.1 变量的声明变量的
19、声明Signed与与unsigned的区别的区别n有符号数在计算机内以二进制补码形式存储的。有符号数在计算机内以二进制补码形式存储的。最高位表示符号位最高位表示符号位(0为正数,为正数,1为负数为负数);n无符号型在机内只能存放正数,最高位用来表无符号型在机内只能存放正数,最高位用来表示数值示数值n当数据占用同样内存位数时,无符号型数值范当数据占用同样内存位数时,无符号型数值范围比有符号数扩大一倍。围比有符号数扩大一倍。例如:例如:short:-2-15215-1unsigned short:0216-1例例2-2 整型变量声明和整型数据的使用整型变量声明和整型数据的使用#include in
20、t main()int a,b;long l;short c,d;unsigned short u,v;a=32767;b=a+1;printf(int a=%d,c=a+1=%dn,a,b);c=0 x7fff;d=c+1;printf(short c=%d,d=c+1=%d n,c,d,u);u=0 xffff;v=u+1;printf(unsigned u=%d,v=u+1=%d n,u,v);l=0 x10000;printf(long l=%dn,l);2.浮点型变量与浮点类型浮点型变量与浮点类型n浮点类型浮点类型:float(32位位)与与double(64位位)n浮点型由实数符号
21、位、小数部分和指数部分组浮点型由实数符号位、小数部分和指数部分组成的二进制串成的二进制串n计算机对一个机内二进制串的解释,按照整型去解计算机对一个机内二进制串的解释,按照整型去解释和按照浮点型去解释,会得到两种截然不同的结释和按照浮点型去解释,会得到两种截然不同的结果。果。n使用变量时要注意数据和变量的类型要一致,使用变量时要注意数据和变量的类型要一致,包括数据的输入输出语句中的格式描述符。包括数据的输入输出语句中的格式描述符。2.5.1 变量的声明变量的声明1bit8bits23bits例例2-3 从键盘输入两个数据分别赋给从键盘输入两个数据分别赋给float型和型和double型变量,显示
22、相加输出结果。型变量,显示相加输出结果。#include int main()float f;double d;scanf(%f%lf,&f,&d);printf(f=%f,d=%f,f+d=%en,f,d,f+d);3.字符型变量与字符类型字符型变量与字符类型nchar型变量,取值为单个字符,编译时分配一个字节型变量,取值为单个字符,编译时分配一个字节空间空间nchar型为有符号类型:取值范围型为有符号类型:取值范围-128127 例如:例如:char c;c=a+1;/c=97+1=98nunsigned char:取值范围:取值范围0255例如:例如:unsigned char ch1,
23、ch2;ch1=255;ch3=256;/ch3=0 2.5.1 变量的声明变量的声明3.字符型变量与字符类型字符型变量与字符类型例例2-4 字符变量的声明、赋值,并输出字符和对应字符变量的声明、赋值,并输出字符和对应的的ASCII值。值。#include int main()char c1,c2,c3;c1=a+3;c2=97+4;c3=c1-32;printf(c1=%c,ASCII=%d;c2=%c,ASCII=%d;c3=%c,ASCII=%dn,c1,c1,c2,c2,c3,c3);2.5.1 变量的声明变量的声明c1=d,ASCII=100;c2=e,ASCII=101;c3=D,
24、ASCII=68c1=d,ASCII=100;c2=e,ASCII=101;c3=D,ASCII=68n变量的初始化变量的初始化:声明变量的同时指定变量初值声明变量的同时指定变量初值 数据类型数据类型 变量名变量名=初始值初始值;初始值:初始值:常量或常量组成的表达式,不含有变量。常量或常量组成的表达式,不含有变量。例如例如:char c=a+1,b;:char c=a+1,b;double d1,d2=0.0 double d1,d2=0.0;int flag=1;int flag=1;double a;double a;double d=a;/error double d=a;/error
25、2.5.2 变量的初始化变量的初始化nsizeof运算符运算符:返回操作数存储空间返回操作数存储空间的大小的大小nsizeof一般使用形式:一般使用形式:sizeof(type)或或sizeof(var_name)2.6 sizeof 运算符运算符 例例2-5 Window环境下编译器给出了基环境下编译器给出了基本类型的存储空间的大小。本类型的存储空间的大小。2.6 sizeof 运算符运算符#include void main()int a=25;long b=4;printf(sizeof(int)=%d,sizeof(long)=%dn“,sizeof(a),sizeof(b);prin
展开阅读全文