a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 45|回复: 0

[C语言] 2012计算机等考二级C语言辅导之实型数据

[复制链接]
发表于 2012-7-31 21:48:08 | 显示全部楼层 |阅读模式
实型数据8 ^  ^% l# c! ]4 g6 x" [3 u
  : @/ C( ]+ T0 D3 Y# B
   1   实型常量
% e( L1 K4 Y$ e- }  7 L& W9 X# P& F5 G
  实型常量又称实数或浮点数。在C语言中可以用两种形式表示一个实型常量。  ?6 x" v( f& t2 L; S" C- l
  
* j* l; k' ^9 t3 |' M9 q( o  一、小数形式
, v1 H# c: d, l0 ~" V    r2 m& t* b+ |/ _) e0 w! w  j
  小数形式是由数字和小数点组成的一种实数表示形式,例如0.123、.123、123.、0.0等都是合法的实型常量。注意:小数形式表示的实型常量必须要有小数点。& L9 A$ k  L; \4 H; Y5 X
  * h/ O% n1 Z4 [: x8 t& Z) u  w0 [
  二、指数形式2 s5 P8 y( d. r/ T8 w+ P
  
8 I- x5 ^) N6 y- n, }/ Q5 i: }  这种形式类似数学中的指数形式。在数学中,一个数可以用幂的形式来表示,如2.3026可
2 c; L/ g: J4 N* g  以表示为0.23026×101、2.3026×100、23.026×10-1等形式。在C语言中,则以“e”或“E”后跟一个整数来表示以10为底的幂数。2.3026可以表示为0.23026E1、2.3026e0、23. 026e-1。C语言的语法规定,字母e或E之前必须要有数字,且e或E后面的指数必须为整数。如e3、.5e3.6、.e3、e等都是非法的指数形式。注意:在字母e或E的前后以及数字之间不得插入空格。# @! @3 @9 E7 x! M- S2 O
  
  [9 S- [) n+ {/ g     2  实型变量' R: B' W+ R0 v6 D$ E# G, j
  : o% ~# O4 a: z6 u; b
  C语言中实型变量分为单精度型和双精度型两种,分别用类型名float和double进行定义。
( D6 K- Z" r* M6 V9 a, d  单精度型变量定义的形式如下:
: |. H7 h* A  s4 v2 Y  float a,b,c;; I2 H# \; x- O: C
  双精度型变量定义的形式如下:
' F) t- n7 M6 p  double x,y,z;
) f# f4 q2 ]) U' R  在一般计算机系统中,为float类型的变量分配4个字节的存储单元,为double类型的变量分配8个字节的存储单元,并按实型数的存储方式存放数据。实型的变量只能存放实型数,不能用整型变量存放一个实数,也不能用实型变量存放一个整数。5 @# p- H* \2 a2 d( P! E
  在VC6.0中单精度实数(float类型)的数值范围约在-1038~1038之间,并提供7位有效数+ u% w- i2 H% n! H7 `0 ?. ~
  字位;绝对值小于10-38的数被处理成零值。双精度实数(double类型)的数值范围约在-10308~10308之间,并提供15~16位有效数字位,具体精确到多少位与机器有关;绝对值小于10-308的数被处理成零值。因此double型变量中存放的数据要比float型变量中存放的数据精确得多。注意,在VC6.0中,所有的float类型数据在运算中都自动转换成double型数据。
- O5 L  |3 t3 [- Y5 Z) Y9 u  前面已经介绍过,在程序中一个实数可以用小数形式表示,也可以用指数形式表示。但在内存中,实数一律是以指数形式存放的。; C% J, ]* t  ]$ z/ m/ J, p
  注意:在计算机中可以精确地存放一个整数,不会出现误差,但整型数值的数值范围比实数小。实型数的数值范围较整型大,但往往存在误差。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-8 17:34 , Processed in 0.413607 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表