看C语言程序的时候,往往会遇到printf函数输出,在此,我想总结一下printf的一般用法以及%12d是什么意思

printf函数的一般格式为

printf(格式控制,输出列表);

例如:

printf(“%d,%c\n”,i,c);

括号内包括两个部分,分别为格式控制和输出列表

格式控制总是以格式声明开始,也就是以%号开始,那么以什么结束呢,通过例子我们可以知道,它是以d,c,f,这样的字符结束,

d,c,f这样的字符也代表他们是以什么样的格式输出,下面我将写出printf中常用的格式字符

格式字符                         说明

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

o                                     以八进制无符号形式输出整数

x,X                                   以十六进制无符号形式输出整数,用x则输出方式以小写形式输出,否则以大写形式输出

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

c                                     以字符型输出,只输出一个字符

s                                     输出字符串

f                                      以小数形式输出单、双精度数,隐含输出六位小数

e,E                                 以指数形式输出实数,e表示(如1.2e+02),E表示(如1.2E+02)

g,G                                 选用%f或%e格式中输出宽度较短的一种格式,不输出无意义的0.用G时,若以指数形式输出,则指数以大写表示

总结一下

这里面常用的格式字符有d,c,f,记法如下:d和i一样的用法,i是int的缩写,所以d就是输出整数;c是char的缩写,char 代表单个字符型,所以c就是字符型

输出方式;f是float的缩写,float代表单精度浮点型,所以f就是浮点型的输出方式

输出列表一般都是已经定义好的变量

例如

int i=10;

printf("%d\n",i);

这里的i就代表输出列表

接下来,我想解释一下%12d的意思

例如:

printf("%12d",f[i]);

我们从上面可以知道,%号是开始标志,d代表输出方式是整数类型,f[i]是输出列表

重点:

12就是代表输出一共有12位,也就是我给你12个位子,让你去坐,

但是可能遇到我们不需要12个位子,怎么办呢

我们通过以前的学习知道,程序是由右向左运行的,所以我们从右边开始填位子,不足的就留空位

例子如下:

int i=123;

printf(“%12d\n”,i);

输出结果如下:

123

左边不足用空位补齐

当然,如果超出啦怎么办?

超出的话按照实际值输出就可以啦

总结

%12d的用法就是先给12个位子给你,然后再赋值,赋值的方法就是从右往左,不足用空格表示。

C语言系列之printf和%12d的用法(三)的更多相关文章

  1. Go语言系列开发之延迟调用和作用域

    Hello,各位小伙伴大家好,我是小栈君,最近一段时间我们将继续分享关于go语言基础系列,当然后期小栈君已经在筹划关于java.Python,数据分析.人工智能和大数据等相关系列文章.希望能和大家一起 ...

  2. Go语言系列(三)之数组和切片

    <Go语言系列文章> Go语言系列(一)之Go的安装和使用 Go语言系列(二)之基础语法总结 1. 数组 数组用于存储若干个相同类型的变量的集合.数组中每个变量称为数组的元素,每个元素都有 ...

  3. Go语言系列之标准库log

    Go语言内置的log包实现了简单的日志服务.本文介绍了标准库log的基本使用. 使用Logger log包定义了Logger类型,该类型提供了一些格式化输出的方法.本包也提供了一个预定义的" ...

  4. R语言系列:生成数据

    R语言系列:生成数据 (2014-05-04 17:41:57) 转载▼ 标签: r语言 教育 分类: 生物信息 生成规则数据1.使用“:“,如x=1:10,注意该方法既可以递增也可以递减,如y=10 ...

  5. 00.从0实现一个JVM语言系列

    00.一个JVM语言的诞生 由于方才才获悉博客园文章默认不放在首页的, 原创文章主要通过随笔显示, 所以将文章迁移到随笔; 这篇帖子将后续更新, 欢迎关注! 这段时间要忙着春招实习, 所以项目更新会慢 ...

  6. Go语言中异常处理painc()和recover()的用法

    Go语言中异常处理painc()和recover()的用法 1.Painc用法是:用于抛出错误.Recover()用法是:将Recover()写在defer中,并且在可能发生panic的地方之前,先调 ...

  7. Hibernate 系列 07 - Hibernate中Java对象的三种状态

    引导目录: Hibernate 系列教程 目录 1. Java对象的三种状态 当应用通过调用Hibernate API与框架发生交互时,需要从持久化的角度关注应用对象的生命周期. 持久化声明周期是Hi ...

  8. C#进阶系列——DDD领域驱动设计初探(三):仓储Repository(下)

    前言:上篇介绍了下仓储的代码架构示例以及简单分析了仓储了使用优势.本章还是继续来完善下仓储的设计.上章说了,仓储的最主要作用的分离领域层和具体的技术架构,使得领域层更加专注领域逻辑.那么涉及到具体的实 ...

  9. 《OOC》笔记(1)——C语言const、static和extern的用法

    <OOC>笔记(1)——C语言const.static和extern的用法 C语言中const关键字用法不少,我只喜欢两种用法.一是用于修饰函数形参,二是用于修饰全局变量和局部变量. 用c ...

随机推荐

  1. MySQL中变量的总结

    本文对MySQL中局部变量.用户变量.系统变量的理解进行总结. 一.局部变量 局部变量由DECLARE语句声明: DECLARE var_name[,...] type [DEFAULT value] ...

  2. 框架应用 : Spring MVC - 开发详述

    软件开发中的MVC设计模式 软件开发的目标是减小耦合,让模块之前关系清晰. MVC模式在软件开发中经常和ORM模式一起应用,主要作用是将(数据抽象,数据实体传输和前台数据展示)分层,这样前台,后台,数 ...

  3. javascript面向对象的写法及jQuery面向对象的写法

    文章由来:jQuery源码学习时的总结 在JS中,一般的面向对象的写法如下: function Cao(){}//定义一个构造函数 Cao.prototype.init = function(){}/ ...

  4. 面试总结之mysql

    总结自己在面试过程遇到的数据库问题,以备不时之需. 1.你在你们公司用的什么版本的mysql数据库,用过mysql5.7吗? 在学校学习mysql的时候用的5.5,在公司的时候用的5.6,5.7还真没 ...

  5. 关于QQ空间相册功能的构想与简单实现

    QQ空间上传照片对其可以分类,形成不同的相册,这对于用户体验来说是很不错的,如果用户只能上传不加以分类,那么用户体验会很差. 下面是自己关于相册功能实现的一些简单看法: 首先,是创建相册,可以用pan ...

  6. log4j 和slf4j的比较

    log4j 和slf4j的比较 slf4j 官网:https://www.slf4j.org/manual.html slf4j(simple logging facade for java)是Jav ...

  7. ajax 轮询 和 php长连接

     只看加粗的字体 js   部分       1:  ajax 成功回调函数中 一定要用时间函数间隔调用  get_comment(). get_comments('init'); function ...

  8. 实验测试之------创建DBlink,查询远端的yang用户下的abcdedfa表,创建同义词

    --测试环境,20远端,30本地: --准备1,20远端建立表的同义词,用户信息: 1.11 ---------------------------------------------------准备 ...

  9. python自动化运维五:paramiko

    p { margin-bottom: 0.25cm; line-height: 120% } a:link { } paramiko是基于python实现的SSH2远程安全连接,支持认证以及密钥方式, ...

  10. linux root修改密码失败

    问题: 当使用root修改密码时,报错passwd:Authentication token manipulation error 解决: 1.查看是否权限问题, /etc/passwd /etc/s ...