C语言:数据类型(摘自实验楼)

2.4.1 什么是数据类型

我们之前的案例中讲到了整数类型 int 定义整型变量,在程序中我们还会用到浮点类型(float)来表示具有小数点的实数,讲解数据类型之前我们先来看一个用到浮点型数据的例子 3-2:

一台拖拉机耕地一亩耗油 0.85kg,它的油箱的容积是 100 升(0.1m3),柴油的密度是 850kg/m3,该拖拉机装满油后最多耕地的亩数是多少?

我们在函数中首先要定义几个变量,定义油箱的容积的变量为浮点型类型 tank_volume,油的密度为浮点类型 oil_density,油箱装在油的总质量为浮点型 oil_kg,该拖拉机装满油最多耕地的亩数是浮点型 area 。下面我们建立一个程序 3-2.c 在 gedit 中输入以下代码:

#include
int main()
{
    float tank_volume;                          // 定义油箱的容积为浮点类型变量 tank_volume
    float oil_density;                          // 定义油的密度为浮点类型变量 oil_density
    float oil_kg;                           
    float area;

    tank_volume = 0.1;                            // 给变量 tank_volume 赋值
    oil_density = 850;                            // 给变量 oil_density 赋值

    oil_kg = tank_volume*oil_density;             // 求 tank_volume 和 oil_density 的积并赋值给 oil_kg
    area = oil_kg/0.85;                           // 求 oil_kg/0.85 的商并赋值给 area
    printf("Most farming is %f mu",area);  
    return 0;
}

代码说明: 下面我们来解释这个程序。下面的语句定义了四个变量:

float tank_volume;                     
float oil_density;                      
float oil_kg;                           
float area;

下面这两条语句是给 tank_volume 和 oil_density 这两个变量赋值:

tank_volume = 0.1;                       // 给变量 tank_volume 赋值
oil_density = 850;                       // 给变量 oil_density 赋值

其实 tank_volume=0.1;oil_density=850; 这两条语句可以和前面的 float tank_volume;float oil_density; 这两条语句放在一起,定义变量的同时初始化赋值,即:

float tank_volume = 0.1;                     
float oil_density = 850; 

接下来我们使用乘法运算符 * 将油箱的容积和油的密度相乘,计算出油箱可以存放油的总质量:

oil_kg  = tank_volume*oil_density;        // 求 tank_volume 和 oil_density 的积并赋值给 oil_kg

之后我们利用除法运算符 / 求出最多可耕地的亩数,并赋值给 area:

area = oil_kg / 0.85; 

  • 为什么在用计算机运算时,需要指定数据的类型呢? 在数学中,数值是不区分类型的,数值的运算是绝对准确的,例如:1/3 的值是 0.33333......(循环小数)。数学是研究抽象的学科,数和数的运算都是抽象的。而在计算机中,数据是存储在计算机中的一个个单元里面,它是具体存在的。而且,存储单元是由有限的字节构成的,每一个存储单元存储的数据是有限的,不可能存放无限大的数,也不能存放无限循环小数,例如计算和输出 1/3:

    printf("%f",1.0/3.0);
    
    

    得到的结果是 0.333333,只能得到六位小数,而不是无穷位的小数。

  • C 语言允许使用的数据类型见下图:
    3-2.4.1-1

大家可以大致浏览该图,不需要现在背下来这些数据类型。接下来我们将要讲述基本类型里面的整型和浮点型。
(实验楼)

你可能感兴趣的:(C语言:数据类型(摘自实验楼))