本章的标题是数据和C,主要内容是介绍数据类型中的整数类型和浮点数类型。

本章的第一段代码

#include <stdio.h>
int main(void)
{
    float weight;  /*用户的体重*/
    float value;   /*相等重量的铑的价值*/
    printf ("Are you worth your weight in rhodium?\n");
    printf ("Let's check it out.\n");
    printf ("Please enter your weight in pounds: ");

    /*从用户处获得输入*/
    scanf("%f", &weight);
    /*假设铑每盎司770美元,14.5833把常衡制的英镑转化为金衡制的盎司*/
    value = 770 * weight * 14.5833;
    printf ("Your weight in rhodium is worth $%.2f.\n", value);
    printf ("You are easily worth that! If rhodium prices drop.\n");
    printf ("eat more to maintain your value.\n");
    return 0;
}

重点看看scanf()函数,%f表示scanf()从键盘读取一个浮点数,&weight指定将输入值赋予名为weight的变量中。scanf()函数使用&符号指示weight变量的位置。

本章的重点是讲数据及数据类型。虽然C语言提供来很多数据类型,但是按照存储方式可以分为两个系列:整数类型和浮点数类型。

主要区别是浮点数表示法是将一个数分为小数部分和指数部分并分别存储。

下面分别讲讲C语言数据类型要注意的地方:

1.int类型

  C语言提供多种整数类型。主要原因是C语言的各种整数类型提供的数值范围不一样,以及数值是否可以取正负号。

2.其他类型

  在传递函数参数时候,C自动将short类型的值转化为int类型。因为int类型被认为是计算机处理起来最方便最有效的整数类型。

3.char类型

  技术实现上,char类型是整数类型。

4._Bool类型

  C99引入,用于表示布尔值。实际上也是一种整型,仅仅需要1位来存储。

5.可移植的类型:inttypes.h

  已有类型的别名。C99提供。例如int16_t表示16位有符号整数类型。要使用这个特性时,需要包含inttypes.h头文件。

6.flaot, double, long double类型

  float类型必须至少能表示6位有效数字。取值范围为10e-37到10e37。系统使用32位存储一个浮点数:8位存指数和符号,24位存非指数部分和符号。double和long double比float精度更大。默认情况下,编译器将浮点常量当作double类型。

7.复数和虚数类型

  C99标准支持。

课后习题都是有关printf()和各种格式说明符打印的练习。难度不大。。

to be continued...

C primer plus 读书笔记第三章的更多相关文章

  1. 《C++ Primer》读书笔记 第三章

    1.注意:头文件不应包含using声明.因为头文件的内容会拷贝到所有引用他的文件中去,对于某些程序来说,由于不经意间包含了一些名字,可能会产生名字冲突.2.string类型的读入:用cin读入stri ...

  2. 《Linux内核设计与分析》第六周读书笔记——第三章

    <Linux内核设计与实现>第六周读书笔记——第三章 20135301张忻估算学习时间:共2.5小时读书:2.0代码:0作业:0博客:0.5实际学习时间:共3.0小时读书:2.0代码:0作 ...

  3. 《Linux内核设计与实现》读书笔记 第三章 进程管理

    第三章进程管理 进程是Unix操作系统抽象概念中最基本的一种.我们拥有操作系统就是为了运行用户程序,因此,进程管理就是所有操作系统的心脏所在. 3.1进程 概念: 进程:处于执行期的程序.但不仅局限于 ...

  4. 《CSS3实战》读书笔记 第三章:选择器:样式实现的标记

    第三章:选择器:样式实现的标记 选择器的魔力在于,让你完全实现对网页样式的掌控.不同的选择器可以用在不同的情况下使用.总之把握的原则是:规范的编码,根据合理地使用选择器,比去背选择器的定义有价值的多. ...

  5. 《linux内核设计与实现》读书笔记第三章

    第3章 进程管理 3.1 进程 1.进程 进程就是处于执行期的程序. 进程包括: 可执行程序代码 打开的文件 挂起的信号 内核内部数据 处理器状态 一个或多个具有内存映射的内存地址空间 一个或多个执行 ...

  6. C primer plus 读书笔记第十一章

    本章标题是字符串和字符串函数.主要是了解和字符串有关的函数. 1.字符串表示和字符串I/O 主要内容:字符串常量和字符串数组的初始化,对比了指针和字符串. 其中要注意的是,数组初始化是从静态存储区把一 ...

  7. 《R语言实战》读书笔记--第三章 图形初阶(二)

    3.4添加文本.自定义坐标轴和图例 很多作图函数可以设置坐标轴和文本标注.比如标题.副标题.坐标轴标签.坐标轴范围等.需要注意的是并不是所有的绘图函数都有上述的参数,需要进行验证.可以将一些默认的参数 ...

  8. C++ primer plus读书笔记——第17章 输入、输出和文件

    第17章 输入.输出和文件 1. 对键盘进行输入缓冲可以让用户在将输入传输给程序之前返回并更正.C++程序通常在用户按下回车键时刷新输入缓冲区. 2. 一些I/O类 streambuf类为缓冲区提供了 ...

  9. C++ primer plus读书笔记——第16章 string类和标准模板库

    第16章 string类和标准模板库 1. string容易被忽略的构造函数: string(size_type n, char c)长度为n,每个字母都为c string(const string ...

随机推荐

  1. HTML5 File 对象

    实例说明1: <div class="container"> <input type="file" id="file" m ...

  2. 注册表修改IP地址和DNS等信息

    ---------------------win8系统 1. 2. 3. --------------------------------------------------------------- ...

  3. asp.net中Page.ClientScript.RegisterStartupScript用法小结(转)

    //ASP.NET后台页面跳转 Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<scri ...

  4. (转帖) 如何將值delay n個clock? (SOC) (Verilog)

    来源:http://www.cnblogs.com/oomusou/archive/2009/06/15/verilog_dly_n_clk.html /* (C) OOMusou 2009 http ...

  5. vs2012快捷键

    (1)自己整理的使用频率最高的快捷键(建议大家亲身体验一下!这样才会在潜移默化中运用得到!) (这里省去了很多大家闭上眼都会操作的什么Ctrl+S 等等操作 给出的大多是不常用但是很有用的快捷键组合! ...

  6. 通过 Xftp5 管理 centOS 7 文件

    一. 在安装好了centOS 7 的服务上,打开终端 运行 ip -s addr 命令 获取服务的IP地址 [root@localhost ~]# ip -s addr1: lo: <LOOPB ...

  7. 在linux下将当前目录文件全部小写含目录名

    ls | sed -n '/[A-Z]/s/.*/mv & \L&/e' 公司以前用的windows server 服务器  文件大小写都一样.  新迁移到centos 服务器上,发现 ...

  8. PHP导出MySQL数据到Excel文件

    PHP导出MySQL数据到Excel文件 转载 常会碰到需要从数据库中导出数据到Excel文件,用一些开源的类库,比如PHPExcel,确实比较容易实现,但对大量数据的支持很不好,很容易到达PHP内存 ...

  9. linux命令——Grep 命令 用法大全

    1. 参数: -I :忽略大小写 -c :打印匹配的行数 -l :从多个文件中查找包含匹配项 -v :查找不包含匹配项的行 -n:打印包含匹配项的行和行标 2.RE(正则表达式) \ 忽略正则表达式中 ...

  10. GFStableList Adapter

    STL中,list的优点是插入.删除性能极佳(时间复杂度只需O(1)即可),而且非常重要的在删除节点后,其迭代器不失效,但list查找却不擅长.map由于其实现的数据结构为rb-tree,因此,其插入 ...