第四节 2个重要函数之第一篇 printf函数

目录

4.1 printf 函数

4.1.1 printf函数不会在输出末尾自动加换行符

4.1.2 使用printf函数时需要引入头文件stdio.h

4.1.3 printf可以在输出文本中指定占位符 

4.1.3.1 %d占位符的使用

4.1.3.2 %s占位符的使用

4.1.3.3 printf()允许限定占位符的最小宽度

4.1.3.4  printf()能显示正负号

4.1.3.5 printf()能限定小数点位数 

4.1.3.6 printf()可以输出部分字符串 


4.1 printf 函数

printf()的作用是将参数文本输出到屏幕       

注:printf由单词print(意为打印)和字母 f 组成(f代表单词format,表示可以定制输出文本的格式)

4.1.1 printf函数不会在输出末尾自动加换行符

代码运行结束后,光标会停留在输出结果的地方,如果想要光标出现在下一行,可以在结尾加上换行符\n

例如我们想要打印 hello world

如果我们没有在末尾加换行符,那么下一次的打印光标会出现在 第一次打印结果的末尾,挨着第一次打印结果出现,

图片中的第一二个printf由于第一个printf没有换行符,所以第二个printf打印结果出现在第一个printf打印结果的后面,第二个printf有换行符,所以第三个printf打印结果出现在了下一行。

如果文本内部有换行,可以通过在文本内部插入换行符实现

例如第四个printf通过在文本内部加入了换行符,使world出现在hello的下一行

4.1.2 使用printf函数时需要引入头文件stdio.h

如没有引入头文件stdio.h会出现printf未定义的报错

4.1.3 printf可以在输出文本中指定占位符 

占位符就是这个位置可以用其他值代替

4.1.3.1 %d占位符的使用

例如我们想要输出 there are 3 students,就可以使用占位符%d,%d表示可以用其它值进行替换,但必须是整数,printf的第二个参数就是替换占位符的值

整数3替换%d,输出结果为there are 3 students 

4.1.3.2 %s占位符的使用

%s对应的替换的值必须是字符串

例如 我们想输出 火火will come to tomorrow

字符串火火替换%s,输出结果为 火火will come to tomorrow

输出文本中可以出现多个占位符

例如我们想输出 火火 says,it is 6 o'clock

文本中共有2个占位符,字符串占位符%s,整数占位符%d ,分别对应 printf()中的第二个参数 火火和第三个参数6

printf() 参数与占位符是⼀⼀对应关系,如果有 n 个占位符, printf() 的参数就应该有 n +
1 个。如果参数个数少于对应的占位符, printf() 可能会输出内存中的任意值。

 图中蓝色为占位符,红色为参数

4.1.3.3 printf()允许限定占位符的最小宽度

%5d表示限定字符串的最小宽度为5,如果不满5位,对应的值前面会添加空格,输出值默认为右对齐,即输出的值前面会有空格,如想改为左对齐,则需在%后面添加-

例如 我们想要输出整数123,限定最小字符宽度为6,输出结果中123前出现了3个空格进行补位 

若我们想要 输出的整数123是左对齐,限定最小字符宽度为6,输出结果中123后会出现空格进行补位,为了方便观察,我们在后面加上hehe来观察补位

 

我们想要输出整数1234567,限定最小字符宽度为6,输出结果为1234567,若超出最小字符宽度限制,则输出结果不变 

对于⼩数,这个限定符会限制所有数字的最⼩显⽰宽度

%11f 表⽰输出的浮点数最少要占据11位。由于⼩数的默认显⽰精度是⼩数点后6位, 77.66输出结果的头部会添加2个空格

4.1.3.4  printf()能显示正负号

默认情况下,printf()不对正数显示正号,但对负数会显示负号 ,若想让正数前显示正号,可以在%后加+

+可以保证输出的数值总是带有正负号 

4.1.3.5 printf()能限定小数点位数 

在输出小数时,可以对小数的位数进行限定,格式为%.限定的小数位数

例如 对0.5 限定2位小数,可以写作%.2f

限定宽度的占位符可以与小数点位数的占位符混合时使用

例如 限定0.67 的宽度为6,小数点位数为3,可以写作%6. 3f    注 小数点也算一位字符

最小宽度与小数点位数这2个限定值也可以用*代替 

4.1.3.6 printf()可以输出部分字符串 

%s在输出字符串时默认是全部输出,若想输出部分字符串,可以写作%.输出的字符数s

例如   Life is bright and everything is lovely 我们想输出12个字符可以写作%.12s

我们可以发现 字符串中的空格也算作字符数 

printf函数的总结就到此结束了

  • 26
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值