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;
}
最新文章
- Openxml 笔记
- 【adb】adb基本命令总结
- 【并查集】【树】最近公共祖先LCA-Tarjan算法
- clearfix清除浮动进化史
- 数据可视化(4)--jqplot
- Effective Java 37 Use marker interfaces to define types
- 教你怎样写自定义IP地址算法
- 配置本地yum源
- JavaScript toFixed() 方法
- [Web] What Is JSONP?
- Java8的新特性
- 1001WA
- Vue深度学习(6)- 组件
- J2EE进阶(七)利用SSH框架根据数据表建立model类
- kubernetes进阶之一:简单例子
- [物理学与PDEs]第2章第2节 粘性流体力学方程组 2.6 一维粘性热传导流体动力学方程组
- IntelliJ IDEA——SVN的配置及使用
- 如何解决JSP页面顶端报错 The superclass ";javax.servlet.http.HttpServlet"; was not found on the Java Build Path
- LetExpr表达式解读
- mysql安装后找不到sock文件
热门文章
- 编程算法 - 二部图确定 代码(C)
- leetcode第25题--Remove Element
- /bin/bash^M: bad interpreter: No such file or directory
- 用批处理文件自动备份文件及文件夹,并自动删除n天前的文件
- 【转】Android官方下拉刷新控件 SwipeRefreshLayout
- .NET MVC4 实训记录之一(引入Unity3.0 Ioc框架)
- SongTaste音乐下载器
- JavaScript等比例缩放图片
- 数据分析R语言1
- 企业架构与建模之使用ArchiMate进行分析