用printf函数格式化输出数据

分析以上程序

  1. scanf("%lf", &d);
    1. %lf:表示从终端接收一个双精度浮点型数据;
    2. &d:表示变量d在内存中的存储地址;
    3. scanf("%lf", &d);表示从终端输入的数据存储到地址&d的存储单元,也就是将数据赋给变量d。
  2. printf("%5.2lf\n", d);
    1. %5.2lf中的5.2表示输出数据占5列,其中小数占2位,第3位小数按四舍五入处理。输出的数据在所占列区域右对齐。如果是%-5.2lf,那么输出的数据在所占列区域左对齐。
    2. 注意:
      1. float型数据,只有6位有效数字;
      2. double型数据,只有15位有效数字;

一、有关数据输入输出的概念

  1. 所谓的输入输出是以计算机主机为主体而言的。
    1. 从计算机向输出设备(显示器、打印机等)输出数据称为输出。
    2. 从输入设备(键盘、磁盘、扫描仪等)向计算机输入数据称为输入。

  1. C语言本身不提供输入输出语句,输入输出操作是由C标准函数库中的函数来实现的。C提供的标准函数以库的形式在C的编译系统中提供,它们不是C语言文本中的组成部分。
    1. 提及:C语言程序执行过程:预处理、编译、连接、执行。(一个C语言程序可以包含若干个源程序文件,在编译时以文件模块为单位)
      1. 预处理:(预处理器)
        1. 将头文件内容读写进来,代替# include预处理指令;
        2. 将符号常量全部置换为字面常量;

    结果:预处理后得到一个完整、可编译的源程序文件

      1. 编译:(编译器)
        1. 将可编译的源程序翻译成二进制的指令,得到目标文件(*.obj)
      2. 连接:(连接器)
        1. 将源程序编译后得到的目标文件(*obj)与源程序中包含的系统库函数相连接,生成一个可执行的目标程序(*.exe)。注意:系统库函数,是已经编译好的目标文件(*.obj)。
      3. 执行:运行*.exe可执行文件(程序)
    • 不把输入输出作为C语句的目的?
      1. 使C语言编译系统简单精炼,因为将语句翻译成二进制的指令是在编译阶段完成的,没有输入输出语句就可以避免在编译阶段处理与硬件有关的问题,可以使编译系统简化,而且通用性强,可移植性好。
    • 如果在源程序中有printf函数,在编译时并不把它翻译成目标指令,而是在连接阶段与系统函数库相连接后,在执行阶段中调用系统函数库中的printf函数。
    • C语言函数库中有一批“标准输入输出函数”,它是以标准的输入输出设备(一般为终端设备)为输入输出对象的。其中有:
      1. 输入输出一个字符:
        1. putchar(输出一个字符);
        2. getchar(输入一个字符);
      2. 格式输入输出:
        1. printf(格式输出);
        2. scanf(格式输入);
      3. 输入输出一个字符串:
        1. puts(字符串输出);
        2. gets(字符串输入);
    • </
  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值