符号                  作用 
────────────────────────── 
    %d              十进制有符号整数 
    %i              输入整数 ,可以是带前导0的八进制数或0x的十六进制数
    %u              十进制无符号整数 
    %f              浮点数 
    %s              字符串 
    %c              单个字符 
    %p              指针的值(内存地址) 
    %e              指数形式的浮点数 
    %x, %X          无符号以十六进制表示的整数 
    %0              无符号以八进制表示的整数 
    %g, %G          自动选择合适的表示法 
━━━━━━━━━━━━━━━━━━━━━━━━━━

格式字符串的一般形式为:

[标志][输出最小宽度][.精度][长度]类型

其中方括号[]中的项为可选项。各项的意义介绍如下:

  1.类型类型字符用以表示输出数据的类型,其格式符和意义下表所示:

表示输出类型的格式字符 格式字符意义

d 以十进制形式输出带符号整数(正数不输出符号)

o 以八进制形式输出无符号整数(不输出前缀O)

x 以十六进制形式输出无符号整数(不输出前缀OX)

u 以十进制形式输出无符号整数

f 以小数形式输出单、双精度实数

e 以指数形式输出单、双精度实数

g 以%f%e中较短的输出宽度输出单、双精度实数

c 输出单个字符

s 输出字符串  

  2.标志

  标志字符为-、+、#、空格四种,其意义下表所示:

标志格式字符 标 志 意 义

- 结果左对齐,右边填空格

+ 输出符号(正号或负号)空格输出值为正时冠以空格,为负时冠以负号

# 对c,s,d,u类无影响;对o类, 在输出时加前缀。对x类,在输出时加前缀0x;对e,g,f 类当结果有小数时才给出小数点    

  3.输出最小宽度

  用十进制整数来表示输出的最少位数。 若实际位数多于定义的宽度,则按实际位数输出, 若实际位数少于定义的宽度则补以空格或0。

  4.精度

  精度格式符以“.”开头,后跟十进制整数。本项的意义是:如果输出数字,则表示小数的位数;如果输出的是字符, 则表示输出字符的个数;若实际位数大于所定义的精度数,则截去超过的部分。

  5.长度

  长度格式符为h,l两种,h表示按短整型量输出,l表示按长整型量输出
说明:
(1)、可以在”%”和字母之间插进数字表示最大场宽。
例如: %3d 表示输出3位整型数, 不够3位右对齐。
%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6,小数点占一位, 不够9位右对齐。
%8s 表示输出8个字符的字符串, 不够8个字符右对齐。
如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。
但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。
另外, 若想在输出值前加一些0, 就应在场宽项前加个0。
例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。
如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度,小数点前的数字代表最小宽度。
例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9, 则第9个字符以后的内容将被删除。
(2)、可以在”%”和字母之间加小写字母l, 表示输出的是长型数。
例如: %ld 表示输出long整数,%lf 表示输出double浮点数
(3)、可以控制输出左对齐或右对齐, 即在”%”和字母之间加入一个”-” 号可说明输出为左对齐, 否则为右对齐。
例如: %-7d 表示输出7位整数左对齐,%-10s 表示输出10个字符左对齐
(4)、可以在格式化字符和%之间加一个*号,用来跳过对应的输入数据。
例如:scanf("%d%*d%d",&a,&b);当输入10 20 30时,a和b的值分别是10与30.

C语言字符串格式化显示的更多相关文章

  1. Asp.net日期字符串格式化显示

    我们经常会遇到对时间进行转换,达到不同的显示效果,默认格式为:2006-6-6 14:33:34 如果要换成成200606,06-2006,2006-6-6或更多的格式该怎么办呢?这里将要用到:Dat ...

  2. C语言 strftime 格式化显示日期时间 时间戳

    C/C++程序中需要程序显示当前时间,可以使用标准函数strftime. 函数原型:size_t strftime (char* ptr, size_t maxsize, const char* fo ...

  3. C语言字符串格式化输出

    %ms:将字符串全部输出,如果字符串长度小于m,在左边用空格将输出宽度补齐为m: %.ns:如果n大于字符串长度,将字符串全部输出,否则,输出前n个字符: %m.ns:如果n不大于m,输出指定字符串的 ...

  4. json字符串格式化显示

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. python初级 2 字符串格式化

    一.回顾 上次我们讲解的数据类型,有int,float,str,bool,NoneType五种 前两种和后两种都比较简单,str较为复杂 二.字符串格式化的使用场景: 有一种字符串, xxx 的内容都 ...

  6. C语言学习笔记---3.字符串格式化输入输出

    1.C语言字符串 字符串(character string)是一个或多个字符的序列,例如:"Zing went the strings of my heart!" C语言没有专门用 ...

  7. Django模版语言 格式化显示 后台datatime()时间

    Django模版语言 格式化显示 后台datatime()时间 场景描述:

  8. Haskell语言学习笔记(86)字符串格式化与插值

    String 的格式化 Text.Printf 这个模块用来处理字符串格式化. printf :: PrintfType r => String -> r printf 用于格式化字符串, ...

  9. 对Json字符串进行格式化显示

    很多时候,我们拿Json字符串作为返回结果,但是当数据量多的时候,一堆的Json字符串看起来很不直观,这时候我们可以使用以下办法将Json字符串格式化一下再输出 var JsonUti = { //定 ...

随机推荐

  1. 进阶之路(中级篇) - 016 温湿度传感器DHT11

    如果想使用 Arduino 开发板驱动 DHT11 来获取温湿度的时候建议使用第三方的库,这样可以加快程序的开发速度,而且不容易出错,下面的代码我已经安转了第三方的库了.详细的安装方法请参考极客先锋的 ...

  2. 进阶之路(基础篇) - 001 亮一个led灯

    /********************************* 代码功能:点亮一个led灯 使用函数: pinMode(引脚号,模式); digitalWrite(引脚号,电平状态); //默认 ...

  3. 【Oracle】详解Oracle中的序列

    序列: 是oacle提供的用于产生一系列唯一数字的数据库对象. 自动提供唯一的数值 共享对象 主要用于提供主键值 将序列值装入内存可以提高访问效率 创建序列: 1.  要有创建序列的权限 create ...

  4. windows Maven3.0 服务器配置搭建

    搭建nexus私服,原因很简单,不必多说,本文重点说下最新版的Maven 3.0.x系列的安装步骤. 最新版的网上中文资料很少,参考后都没成功.最后在官网的英文资料中得到答案,成功搞定. 1.确定我们 ...

  5. Oracle 12C -- 手动创建CDB

    1.指定oracle_sid $ export ORACLE_SID=db12 2.指定环境变量 比如ORACLE_BASE.ORACLE_HOME.PATH(要包含$ORACLE_HOME/bin) ...

  6. MySQL和ORACLE、SQL Server、PostgreSQL相比

  7. git经常使用命令和问题

    和远程仓库相关的命令: 下载仓库代码:git clone 远程仓库地址 查看远程仓库:git remote -v 加入远程仓库:git remote add origin [url], 当中origi ...

  8. java播放wav文件

    import java.io.File; import java.io.IOException; import javax.sound.sampled.AudioFormat; import java ...

  9. [转]OkHttp使用完全教程

    1. 历史上Http请求库优缺点 在讲述OkHttp之前, 我们看下没有OkHttp的时代, 我们是如何完成http请求的.在没有OkHttp的日子, 我们使用HttpURLConnection或者H ...

  10. MySql(十七):MySql架构设计——高可用设计之思路及方案

    前言: 数据库系统是一个应用系统的核心部分,要想系统整体可用性得到保证,数据库系统就不能出现任何问题.对于一个企业级的系统来说,数据库系统的可用性尤为重要.数据库系统一旦出现问题无法提供服务,所有系统 ...