C语言之printf函数
一 基本用法
格式化控制符:%d %c %ld %lf
意思是:相当于在要输出的语句里面挖了一个坑,也就是在内存中开辟空间,然后再那个坑的位置(也就是开辟好的空间),填上你想要显示的值
printf("%d\n",age);
printf("%c\n",ch);
printf("%f\n",f);
printf("%ld\n",lNum);
printf("%lf\n",d);
%d:代表挖一个int类型的坑,然后你需要给我填入一个int类型的数据
%c:代表挖一个char类型的坑,然后你需要给我一个char类型的数据
%f:代表挖一个float类型的坑,然后你需要给我一个float类型的数据
%ld:代表挖一个long类型的坑,然后你需要给我一个long类型的数据
%lf: 代表挖一个double类型的坑,然后你需要给我一个double类型的数据
二 详解
%d:输出int类型
%md:m代表这个整数占多少位,但是还是输出int 不足部分以空格补齐
如果m是负数,那么空格在后面补齐
如果实际的位数>=m,那么按原样输出
%0md:(可能会用,重点)
m代表这个整数占多少位,而且输出的还是int不足部分以0补齐
如果实际位数 >= m ,那么还是按原样输出
前面不能加负号
%.nf:(重点)
n代表输出几位小数,但是还是输出float
代表保留小数点后几位,然后保留的最后一位会根据它的下一位做四舍五入
例: 10.3333
如果用%.2f输出,会输出 10.33
10.3352
如果用%.2f输出,会输出 10.34
%m.nf:(非重点,了解有这回事)
m代表这个小数一共占用几列,n代表保留几位小数,不足部分以空格补齐
如果实际位数或者保留小数点后几位的位数 大于或者等于m,那么以实际位数或者保留小数后几位的位数输出
tips: 代码例子如下
#include <stdio.h>
int main(int argc, const char * argv[]) {
//prinrf基本用法
//%d
int age = 14;
printf("你好,今年我%d岁\n",age);
//%c
char ch = 'a';
printf("%c\n",ch);
//%f 默认输出小数点后6位
float f = 10.3333f;
printf("%f\n",f);
//%ld
long lNum = 20000l;
printf("lNum = %ld\n",lNum);
//%lf
double d = 32103.32312;
printf("%lf\n",d);
//printf函数的详解
//%md的情况
/*
//因为要占两位,所以打印空格3
printf("%d\n",3);//打印3
printf("%2d\n",3);//打印 3
printf("%5d\n",3);//打印 3
printf("%-2d\n",3);//打印3空格
printf("%3d\n",324);//那就是3位,324
printf("%3d\n",1234);//原样输出 1234
*/
//%0md的情况
/*
printf("%02d\n",3);//打印03
printf("%05d\n",3);//打印00003
printf("%02d\n",3);//打印30
printf("%05d\n",3);//打印00003
printf("%03d\n",345);//打印345
printf("%03d\n",12345);//打印12345
*/
//%.mf的情况
/*
float lf = 103.3333f;
printf("%.2f\n",lf);//打印103.33
float f2 = 10.3355667;
printf("%.2f\n",f2);//打印10.34
*/
//%m.nf的情况
/*
float f1 = 103.33;
printf("%10.2f\n",f1);//一共占用10列,4个空格所以是输出的 103.33
printf("%5.2f\n",f1);//输出103.33
float f2 = 103.335678;
printf("%2.2f\n",f2);//输出103.34
*/
return 0;
}
C语言之printf函数的更多相关文章
- 【C语言】printf函数详解
C语言printf函数详解 一.相关基础知识 请求printf()打印变量的指令取决于变量的类型,例如打印整数用%d符号,打印字符用%c符号,这些符号称为转换说明(conversion specifi ...
- 【C语言】printf()函数详解
printf函数称为格式输出函数,其关键字最末一个字母f即为"格式"(format)之意.其功能是按用户指定的格式,把指定的数据显示到显示器屏幕上.在前面的例题中我们已多次使用过这 ...
- C语言 之 printf () 函数你真的会用吗?
main(){ int i=8; printf("%d %d %d %d %d %d ",++i,--i,i++,i--,-i++,-i--); } 运行结果 8 7 7 8 -7 ...
- 李洪强漫谈iOS开发[C语言-017]-printf函数
- C语言printf()函数:格式化输出函数
C语言printf()函数:格式化输出函数 头文件:#include <stdio.h> printf()函数是最常用的格式化输出函数,其原型为: int printf( char ...
- 三,对于printf函数和C语言编程的初步拓展
前面说过了,任何程序都要有输出,所以printf函数是一个很重要的函数,所以有必要在学变量之前先拓展一下. 其实编程就是用计算机语言说话,一句一句地说,只要语法没错就能运行,至于能实现什么功能,就看编 ...
- IOS学习笔记07---C语言函数-printf函数
IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...
- 【C语言】浅谈可变参数与printf函数
一.何谓可变参数 int printf( const char* format, ...); 这是使用过C语言的人所再熟悉不过的printf函数原型,它的参数中就有固定参数format和可变参数(用& ...
- C语言中的可变参数函数的浅析(以Arm 程序中的printf()函数实现为例) .
我们在C语言编程中会遇到一些参数个数可变的函数,一般人对它的实现不理解.例如Printf(): Printf()函数是C语言中非常常用的一个典型的变参数函数,它 的原型为: int printf( c ...
随机推荐
- php调用webservice报错Class 'SoapClient' not found
原文:php调用webservice报错Class 'SoapClient' not found php在调用webservice时,报告如下类似错误: ( ! ) Fatal error: Clas ...
- Gimp教程:制作彩色的网站横幅
效果图: Step1.新建900x200的透明图层 Step2.点选画笔工具,在左下方的设置界面进行如下: 设置画笔,动态,颜色,勾选应用抖动,然后试着在图层上画一画,调节一下画笔大小,相信你能作出如 ...
- 最受欢迎web前端技术总结
Web前端技术发展非常快,主流技术的进步.想想刚毕业那会用asp技术.目前,该网站已经非常少见主流应用. 后来的后来J2EE框架.然后SpringMVC声望,然而,最近的各种js框架广泛传播,Html ...
- HTML 速成
html零基础者入. 记得学计算机网络的时候好像有学过一些HTML,但没运用起来都忘光了.近来想学学如何写网页.就从html(HyperText Markup Language超文本标记语言)入手了. ...
- 自己写RTPserver——大约RTP协议
自己写RTPserver--大约RTP协议 本文将带领你一步一步地实现一个简单的手RTP变速器server,旨在了解RTP流媒体传输协议以及有关多媒体编解码器的一些知识. RTP协议的必备知识 要动手 ...
- Visual Studio 2013 的 Browser Link 功能
Visual Studio 2013 的 Browser Link 功能 最近公司弄新项目需要用 MVC,就把 IDE 升级到了 Visual Studio 2013,在开发的时候发现有好多请求一个本 ...
- OSGi.NET 学习笔记
OSGi.NET 学习笔记 [目录] 持续更新和调整中,本人学习笔记,非官方文档,难免疏漏,仅供参考. OSGi.NET SDK下载地址. 前言及环境准备 模块化和插件化 概念 实例 小结 面向服 ...
- 分享一个c#写的开源分布式消息队列equeue
分享一个c#写的开源分布式消息队列equeue 前言 equeue消息队列中的专业术语 Topic Queue Producer Consumer Consumer Group Broker 集群消费 ...
- SQLSERVER数据库学习总结七(视图,索引)
--视图的主意点:不能和表的名称相同,如果某一列为函数,表达式,常量或者与来自多张表的列名相同,必须为列定义名称,不能在试图上创建索引 if exists(select 1 from sys.syso ...
- c#中关于String、string,Object、object,Int32、int
在java中,string和String有着明显的区别,后者就是前者的一个封装.在c#中,好像是通用的,大部分情况下,两者互换并不会产生问题.今天特意查了一下资料,了解了一下两者的关系. 简单的讲,S ...