主题: [文章] c语言入门很简单
查看单个帖子
旧 2012-05-21, 13:08   #6
lili123
普通会员
 
注册日期: 2012-05-21
帖子: 37
声望力: 13
lili123 正向着好的方向发展
默认 回复: c语言入门很简单

2.2.2 数据的表示
在前面描述计算税后工资的例子中,要告诉计算机:工资是3000元、税率5%,计算它的税后工资。该怎么告诉计算机呢?而且,要确定告诉计算机工资是3000而不是2999.99,税率是5%而不是5‰,这就涉及到数据在C语言中的表示了。
为了数据能在C语言中容易表示,数据被分为了好多的类!每一类的数据被叫做属于同一种数据类型。对于每一种运算,不同的数据类型计算出来的结果都是不一样的。这就好比同样的化学纤维做出来的衣服类型不同使用就不同了。男士的西服让女士穿着就显着别扭,女士的裙子要是被男士穿着就要闹出尴尬了,更甚者总不能把裤子穿在头上吧!所以,得分清楚数据的数据类型然后才能正确的使用它们。
2.2.3 数据类型面面观——精度和范围
在了解C语言数据类型之前,先了解两个概念——精度和范围,这是讨论数据类型的重点。
1.精度
精度是用来说明可以表示数据的最小的粒度,也就是可以表示的精细程度。讲个笑话,一个人过收费站,过磅整车重4.29吨。然后司机上了一趟厕所,又过收费站,过磅,整车重4.20吨。一趟厕所下来,减少了0.09吨,共90公斤。电子称只能称到0.1吨,所以司机上不上厕所对于称重没有影响,因为电子称的精度不够。这个故事告诉我们不必憋尿来增加车重,没必要,呵呵…
2.范围
范围是用来说明可以表示的数据的最大尺度,也就是可以表示的广度。不同数据表示的要使用不同的广度,不然就会出现用游标卡尺去量万里长城的笑话了。游标卡尺虽然精度很细,但是范围远远不够,估计把长城量完也至少也得好几年吧。还不如用卫星直接去测呢,瞬间搞定!
2.2.4 C语言基本数据类型
精度和范围(也就是广度)之间得有个权衡,很多时候有精度没有广度的,或者是有广度没精度的。就像游标卡尺和卫星测量一样,需要我们选择合适。在C语言中,有三种基本的数据类型供我们选择,它们有着不同的精度和广度,可以根据自己的需要选择合适的。这三种数据类型分别是整形、浮点型、字符型,它们可谓是C语言数据的三大变形金刚。
1.整型
整型在C语言中是用来表示整数的,主要是用符号int表示。为了满足不同的需要,整型按照可表示的范围分为以下几类:整型(或者叫一般整型)、短整型、长整型。短整型用来表示较小范围的数,长整型用来表示较大范围的数。这就好像你要装水得有瓢、或有水桶、或又有缸一样,都是用来装水,但是分别用于不同的用途。对于不同的整型,在C语言中使用不同的符号表示:
 整型:使用int关键字表示;
 短整型:使用short int关键字表示,简写为short;
 长整型:使用long int关键字表示,简写为long,可以省略int不写。
整数分为正整数、负整数和零。有的时候需要表示整数的既可以是正的也可以是负的,有的时候只需要表示正的整数。就像我们表示人民币的时候用的都是正数或者零元,表示温度的时候既可以是负一度,也可以是正一度。
为了满足上面的需求,C语言中的整型又可以分为有符号的和无符号的。有符号整型可以表示正整数、零和负整数,有符号使用signed符号表示。无符号整型只可以表示正整数和零,无符号使用unsigned符号表示。
因此,三种整型分别和有符号、无符号组合,因此整型总共有六种:
 有符号整型:简称整型,用signed int关键字表示,简写为int;
 有符号短整型:简称短整型,用signed short int关键字表示,简写为short int或者short;
 有符号长整型:简称长整型,用signed long int关键字表示,简写为long int或者long;
 无符号整型:用unsigned int关键字表示;
 无符号短整型:用unsigned short int关键字表示,简写为unsigend short;
 无符号长整型:用unsigned long int关键字表示,简写为unsigned long。
我们列表来表示每一种整型的范围和适合表示的数,如表2.2所示。
lili123 当前离线   回复时引用此帖