- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.1 C的数据类型 一个程序应包括以下两方面内容: 对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构(data structure)。 对操作的描述。即操作步骤,也就是算法(algorithm)。 数据是操作的对象,操作的目的是对数据进行 加工处理,以得到期望的结果。 作为程序设计人员,必须认真考虑和设计数据结构和操作步骤(即算法)。因此,著名计算机科学家沃思(nikiklaus Wirth)提出一个公式:数据结构+算法=程序,实际上,一个程序除了以上两个主要要素之外,还应当采用结构化程序设计方法进行程序设计,并且用某一种计算机语言表示。因此,可以这样表示: 程序=算法+数据结构+程序设计方法+语言工具和环境 在上述公式中,算法是灵魂,数据结构是加工对象,语言是工具,编程需要采用合适的方法。算法是解决“做什么”和“怎么做”的问题。程序中的操作语句,实际上就是算法的体现。算法处理的对象是数据,而数据是以某种特定的形式存在的(例如整数、实数、字符等形式)。不同的数据之间往往还存在某些联系(例如由若干个整数组成一个整数数组)。所谓数据结构指的是数据的组织形式。例如,结构体、联合体、数组就是数据结构。 单精度和双精度 什么是单精度: 在C语言中单精度类型称为浮点类型(float),顾名思义是通过浮动小数点来实现数据的存储。它所占的内存空间为4字节(32位),可以表示±3.4*1038范围内的数值,在IEEE 754标准中的表示范围可达到7位精度。 双精度数据类型(double)与float 数据类型相似,但精确度提高到16位,而且占的内存空间为8字节(64位),其数值范围为1.7E-308~1.7E+308。 例: 假设单精度用4位数记录一个变量,双精度就是用两个单精度也就是8位来记录一个变量。 比如0单精度下就只能记录0.1111,双精度就能记录到0 见书P 13 如:a+b*c 乘法优先级高于加法 该表达式先做b*c,其结果再与a相加 a+b-c 加减法优先级相同,从左向右结合 a=b=5 赋值运算符从右向左结合,先将5赋给 b,再将赋值的结果赋给a 注意:单目运算符的优先级要比双目运算符高, 如:i=-5*-3; 结果i值为15 #include stdio.h main( ) { char c1=A,c2,c3; int i=5,j,k; c2=c1++; c3=++c1; j=i--; k=--i; printf(c1=%c,c2=%c,c3=%c\n,c1,c2,c3); printf(i=%d,j=%d,k=%d\n,i,j,k); } c1=C, c2=A, c3=C i=3, j=5, k=3 ? 例: 说明: 1.++ 和 -- 的运算对象只能是变量(或运算结果是变量的表达式), 不能是常量或运算结果是数值的表达式。 例如: 5++、(a+2)++ 不合法。 2.具有右结合性,结合方向为从右到左。 例如: –a++ 等价于 -(a++) 3.在有++ 和 – –的表达式中,尽量不要使用难于理解和容易出错的表达方式,尤其是具有二义性的表达式。 int i=3; m=(i++)+(i++)+(i++); int i=3; a=i++; b=i++ c=i++; c=a+b+c; (√) 3. 算术表达式 算术表达式:用算术运算符将运算对象连接起来,符合C语法规则,并能说明运算过程的式子,称为算术表达式。如: 假设a,b,c,d,e,f均为整型量, ( a + b * c – d / e ) % f 是一个合法的C算术表达式,该表达式的求值是先括号内的乘、除与加、减,然后其括号的结果再与f做求余运算,该表达式运算结果的数据类型是整型,而该表达式中运算符的结合性,均为自左至右。 逗号运算符和逗号表达式 一般形式: 表达式1,表达式2,…,表达式n 例:z=(y=(x=4*5,x*5),x+25) x=20, y=100, z=45 综合例题: int k=7; float a=2.5,b=4.7; 则表达式 a+k%3*(int)(a+b)%2/4的值_____ A. 2.5 B. 2.75 C. 3.5 D. 0.0 A 各类数值型数据间的混合运算与类型转换 C语言规定: 相同类型数据直接进行运算,运算结
文档评论(0)