C语言程序设计第2章C语言基础.ppt
《C语言程序设计第2章C语言基础.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计第2章C语言基础.ppt(81页珍藏版)》请在三一办公上搜索。
1、第2章 C语言基础,C 语言程序设计,2,本章主要内容,本章介绍C语言的基础,包括:C语言使用的合法字符?单词?字符集标识符:单词的组成原则,程序处理的对象是数据数据类型:数据的存储、参与的运算数据表现形式:变量和常量数据操作:运算符和表达式C语言的语句类型,3,例如:,【例2.1】计算圆的面积,半径为 5 cm。程序如下:,main()float r,area;r=5;area=3.14*r*r;printf(%fn,area);,运算结果是输出圆的面积:78.500000,程序中用到的数据:r、area、5、3.14对数据进行的运算:*、=数据的名称是标识符,例jc2_1,4,分析:,计算
2、机操作处理时,要表示各种处理的对象出现在程序的符号和字符可以使用英文字母吗?可以使用中文字符吗?合法的字符集合半径用 r表示,面积 用 area 表示。对象可以取什么样的名称?标识符:可以用作各种对象的名字,涉及C语言最基本组成,5,分析:,计算机操作处理时,首先要解决数据的存放:事先要在内存中给半径 r 和运算结果 area 开辟存储空间,存放它们的值。应该留多大的地方来存放它们的值?数据 5 和 3.14 与 r、area 不同,它们是在编写程序时就给出确定的值,在运算过程中不会改变。这样的数计算机怎么处理?对整数 5 和小数3.14,计算机存放时是否有区别?,涉及数据类型的基本知识,6,
3、2.1 C程序的符号系统,主要内容:基本字符标识符,7,2.1.1 基本字符,大写英文字母:A B C X Y Z 小写英文字母:a b c x y z 数字:0 1 2 9 空白符:空格符、换行符、制表符 特殊字符:+-*/()_=!#%.,;:“|&?$,8,2.1.2 标识符,由字母、下划线和数字组成的字符序列用于程序中的变量、符号常量、数组、函数、数据类型等操作对象的名字,1系统定义标识符具有固定名字和特定含义的标识符分为关键字和预定义标识符 2用户定义标识符 用于对用户使用的变量、数组、函数等操作对象进行命名,9,关键字,数据类型:int、char、float、double、shor
4、t、long、void、signed、unsigned、enum、struct、union、const、typedef、volatile 存储类别:auto、static、register、extern 语句命令字:break、case、continue、default、do、else、for、goto、if、return、switch、while 运算符:sizeof,10,预定义标识符,系统标准库函数scanf、printf、putchar、getchar、strcpy、strcmp、sqrt等编译预备处理命令include、define等,11,对标识符的规定,用户定义标识符必须以字母或
5、下划线“_”开头不能含有除字母、数字和下划线“_”外的其他字符标识符中大小写字母含义不同关键字必须用小写字母。不允许使用关键字为变量、数组、函数等操作对象命名预定义标识符允许用户对它们重新定义,当重新定义后将改变它们原来的含义,12,正确区分标识符,正确区分哪些是合法标识符,哪些是不合法标识符。其中合法标识符中哪些是关键字,哪些是预定义标识符,哪些是用户定义标识符。Abc define 2x double studentm+y a#b-4 _1 Whileint let x%y name do wtm Ctrl swicth include,13,2.2 C语言的数据类型,C数据类型,本章讨论
6、基本类型数据,14,2.2.1 整型数据,1整型数据的类型基本整型数据 int,分配 4 Byte短整型数据 short int,分配 2 Byte长整型数据 long int,分配 4 Byte整型数据均以二进制补码形式存储,问题:为什么要采用补码?如何表示?,15,计算机中正、负数的表示,例如:109(1101101)2要区别:109 和 109 方法是:将符号也数码化即:正的符号 用 0 表示 负的符号 用 1 表示,计算机中的数表示方法是:符号位二进制数值(以 8bit 为例)109 110 1101 0110 1101109 110 1101 1110 1101,16,问题:计算机计
7、算复杂化,例如计算:(-19)+(+22)1001 0011+0001 0110,解决的方法是:使用补码的表示方法能将减法一律转换为加法。,需要判断符号是否相同:如果相同,结果符号不变,并进行绝对值相加如果不同,结果取绝对值大的数的符号,并进行绝对值相减,17,整型数据的类型及规定(注:此结果是在VC+环境中运行,win-tc中结果 不一样),方括号表示可选项short 分配2 Byte,int、long分配4 Byte,18,说明1.有符号和无符号整型数据,有符号的整型数据 signed short无符号的整型数据 unsigned short区别是将最高位看作符号位还是数据位,例如:111
8、1 1111 1010 1000作为有符号数使用时,最高为符号位为负数,值是:-88(再求一次补)作为无符号数使用时,最高为数据位为无符号的数,值是:65448,19,例如:,main()unsigned short int m;m=65448;printf(m=%dn,m);printf(m=%un,m);,输出结果:m=-88m=65448 注:这是在 win-tc下运行的结果,VC+下均为65448,因为VC+下unsigned int与int都是占4个字节,按有符号数输出,按无符号数输出,20,说明2:整数溢出问题:超出范围,系统为short 型数分配的存储空间为:16 bit(2By
9、te),=215-1=32767,0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1,1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,问题:上数再加1是多少?,=-215=-32768,表示范围:-32768 32767,使用中注意数的范围,有符号short型整数的最大值,有符号short型整数的最小值,21,例如:,void main()short int a,b;a=32767;b=a+1;printf(“a=%dnb=%dn“,a,b);,输出结果:a=m=,32767,-32768,22,2.2.2 实型数据,1实型数据的类型 单精度实型数据 float,分
10、配4 Byte双精度实型数据double,分配 8 Byte2实型数据的存储,单精度实型,指数部分,小数部分,小数的符号位,指数的符号位,23,实型数据的类型及规定,C标准并未具体规定各种实型数据所占字节数,也不规定具体小数和指数部分的位数。一般而言,小数部分位数多,数据表示的有效数字多,精度就高;而指数部分位数多,则表示的数据范围更大。,有效数字的意义?,24,例如:,void main()float x=12345.54321;double y=445566778899.987654321;printf(x=%fny=%fn,x,y);,输出结果:x=y=,有效数字的具体含义,12345.
11、542969,445566778899.987670,25,2.1.3 字符型数据,字符型数据char,分配 1 Byte 字符型数据是指字母、数字、各种符号等用ASCII值表示的字符例如 a 是一个char类型数据,称作字符常量,存储:,0 1 1 0 0 0 0 1,最高位为0,将a 转为ASCII,26,2.1.4 空类型(void),通常与指针或函数结合使用eg.void main(),27,2.3 常量、变量,主要内容:常量变量,28,2.3.1 常量,在运行程序的过程中值保持不变的量1整型常量 十进制:09八进制:07,以 0开头十六进制:09,AF/af,以 0 x或 0X 开头
12、,例如:100-8 0+123010 024 0100 0730 x38 0 x10 0X10 0XFF 0 x0a,29,1.整型常量,注意:十六进制常量中可以使用大写字母AF,也可以使用小写字母af。八进制常量中不能出现数字 8 或 9例如:018、0921非法,可以表示成8进制,10进制和16进制,30,说明.整型常量的类型,根据值大小默认类型。int a=5;long a=5;short b=32768;,31,说明.整型常量的类型,整型常量后面加l或L,则认为是long int型 例如:123L、0L、432l、0 x100l整型常量后面加u或U,则认为是unsigned型 例如:1
13、5u、234u、017u、0123u 0 xFu、0 xACu 15Lu、543Lu,32,2.实型常量,十进制形式 1.0 1.+12.0-12.0 0.0指数形式 1e3 1.8e-3-123E-6-.1E-3,指数只能是整数,而尾数则可以是整数也可以是小数,无论指数或尾数均不能省略例如:1e、E.5、E-3 非法实型常量的类型:默认为double型,后面加F(或f),则强调表示该数是float类型例如:3.5f、1e2F,33,3.字符型常量,可视字符常量 单引号括起来的单个可视字符例如:a、A、+、3、等 转义字符常量单引号括起来的 与可视字符组合,例如:,#includevoid m
14、ain()int a,b,c;a=1;b=2;c=3;printf(%dnt%d%dn%d%dtb%dn,a,b,c,a,b,c);,35,4.字符串常量,用双引号括起的一个字符序列例如:ABC、123、a、nt nGood morning字符串常量的长度:所包含的字符个数 字符串常量的存储方式:,所占存储单元数:串长度1例如:,字符串结束标记,36,说明 字符串常量与字符常量,37,5.符号常量,以标识符来代表的常量事先编译预处理命令define定义编译时先由系统替换为它所代表的常量,再进行编译例如:,#define LEN 2.5main()float a,b;a=2*3.14*LEN;b
15、=3.14*LEN*LEN;printf(a=%f,b=%fn,a,b);,编译前系统进行替换,38,5.符号常量,main()float a,b;a=2*3.14*2.5;b=3.14*2.5*2.5;printf(a=%f,b=%fn,a,b);,define是编译预处理命令,必须以“#”开头编译预处理命令在后续章节会继续讨论。,替换为,39,2.3.2 变量,1.变量的有关概念在程序运行过程中,其值改变的数据,称为变量,变量用标识符表示,称为变量名。变量必须“先定义后使用”系统为变量分配存储单元,存储变量的值。编写程序时通过变量名来存、取变量值。,例如:有变量a它的值是510,40,2.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 语言 基础
链接地址:https://www.31ppt.com/p-6504132.html