C语言系列之printf和%12d的用法(三)

时间:2023-01-29 10:16:03

看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&period;从0实现一个JVM语言系列

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

  6. Go语言中异常处理painc&lpar;&rpar;和recover&lpar;&rpar;的用法

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

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

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

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

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

  9. 《OOC》笔记&lpar;1&rpar;——C语言const、static和extern的用法

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

随机推荐

  1. Spring boot开发过程遇到的一些小问题

    1.无法将yml文件自动注入到对应的类的实例中去: pom.xml文件里没有加如下依赖 <dependency> <groupId>org.springframework.bo ...

  2. 一个不错的php验证码的类

    类的代码: <?php class Captcha { private $width; private $height; private $codeNum; private $code; pri ...

  3. ASP&period;net的url重写

    http://blog.csdn.net/windok2004/article/details/2432691 1. 有关于URL的重写,本文也只是拿来主意.相继有MS的组件“URLRewriter” ...

  4. LeetCode&lpar;&rpar;Minimum Window Substring 超时,但觉得很清晰。

    我的超时思路,感觉自己上了一个新的台阶,虽然超时了,但起码是给出了一个方法. 遍历s 一遍即可,两个指针,当找到了一个合格的字串后,start 开始走,直到遇到s[start]在t中 如果不符合,en ...

  5. 将js对象转为json对象属性加上引号

    工具地址 http://js2json.mengxiangchaoren.com

  6. d3可视化实战03:神奇的superformula

    需求驱动实现 前文讲过了D3的数据驱动机制,中间所举的例子都很简单.例如那个demo里面,绑定的数据是一个简单的数组,实现的图元也仅仅是一堆用SVG画的circle.但是现实世界中我们往往会遇到复杂的 ...

  7. dojo&period;io&period;script

    dojo.io.script 定义: 跨域访问数据,可以动态的将script标签插入到网页当中. 局限: 1.只支持get方式访问: 2.只支持异步调用. 使用: 1.dojo.io.script.g ...

  8. Expression 转化为sql&lpar;三&rpar; --自定义函数

    SQL 语句有很多函数如len(),now()等等.如何来生成这些函数.最近研究也写办法共大家参考. 一.首先建立一个建一个扩展类,控制只能允许这些函数出现,如果出现其他函数就直接报异常. publi ...

  9. Linux下网站根目录权限

    网站根目录权限遵循: 文件644 文件夹755 权限用户和用户组www-data 如出现文件权限问题时,请执行下面3条命令: chown -R www-data.www-data /usr/local ...

  10. NLP第3章 中文分词技术