29 在屏幕上输出各种类型的数据
来源:互联网 发布:重庆高档小区知乎 编辑:程序博客网 时间:2024/05/31 13:16
C学习网:链接->C学习网
C训练网:链接->C训练网
在《C语言在屏幕上显示内容》一节中,我们使用 puts 来输出字符串。puts 是 output string 的缩写,只能用来输出字符串,不能输出整数、小数、字符等,我们需要用另外一个函数,那就是 printf。printf 比 puts 更加强大,不仅可以输出字符串,还可以输出整数、小数、单个字符等;输出格式也可以自己定义,例如:
- 以十进制、八进制、十六进制形式输出;
- 要求输出的数字占 n 个字符的位置;
- 控制小数的位数。
printf 是 print format 的缩写,意思是“格式化打印”。这里所谓的“打印”就是在屏幕上显示内容,与“输出”的含义相同,所以我们一般称 printf 是用来格式化输出的。
先来看一个简单的例子:
printf("C语言中文网");
这个语句可以在屏幕上显示“C语言中文网”,与puts("C语言中文网");
的效果类似。输出变量 abc 的值:
int abc=999;printf("%d", abc);
这里就比较有趣了。先来看%d
,d 是 decimal 的缩写,意思是十进制数,%d 表示以十进制的形式输出。输出什么呢?输出变量 abc 的值。%d 与 abc 是对应的,也就是说,会用 abc 的值来替换 %d。再来看个复杂点的:
int abc=999;printf("The value of abc is %d !", abc);
会在屏幕上显示:The value of abc is 999 !
你看,字符串 "The value of abc is %d !" 中的 %d 被替换成了 abc 的值,其他字符没有改变。这说明 %d 比较特殊,不会原样输出,会被替换成对应的变量的值。
再来看:
int a=100;int b=200;int c=300;printf("a=%d, b=%d, c=%d", a, b, c);
会在屏幕上显示:a=100, b=200, c=300
再次证明了 %d 与后面的变量是一一对应的,第一个 %d 对应第一个变量,第二个 %d 对应第二个变量……
%d
称为格式控制符,它指明了以何种形式输出数据。格式控制符均以%
开头,后跟其他字符。%d 表示以十进制形式输出一个整数。除了 %d,printf 支持更多的格式控制,例如:- %c:输出一个字符。c 是 character 的简写。
- %s:输出一个字符串。s 是 string 的简写。
- %f:输出一个小数。f 是 float 的简写。
除了这些,printf 支持更加复杂和优美的输出格式,考虑到读者的基础暂时不够,我们将在《C语言数据输出大汇总以及轻量进阶》一节中展开讲解。
我们把代码补充完整,体验一下:
- #include <stdio.h>
- int main()
- {
- int n = 100;
- char c = '@'; //字符用单引号包围,字符串用双引号包围
- float money = 93.96;
- printf("n=%d, c=%c, money=%f\n", n, c, money);
- return 0;
- }
n=100, c=@, money=93.959999
要点提示:
1)
\n
表示换行,在《C语言转义字符》一节中有具体讲解。puts 输出完成后会自动换行,而 printf 不会,要自己添加换行符。2)
//
后面的为注释。注释用来说明代码是什么意思,让我们阅读更加方便,它也是代码的一部分。编译器会忽略注释内容。我们将在《C语言标识符、关键字和注释》一节中详细讲解。3) money 的输出值并不是93.96,而是一个非常接近的值,这与小数的存储有关,我们将在《小数在内存中是如何存储的》一节详细介绍。
我们也可以不用变量,直接将数据输出:
- #include <stdio.h>
- int main()
- {
- float money = 93.96;
- printf("n=%d, c=%c, money=%f\n", 100, '@', money);
- return 0;
- }
【脑筋急转弯】%ds输出什么
%d 输出整数,%s 输出字符窜,那么 %ds 输出什么呢?%ds 输出整数,并在后面添加一个字符 's'。因为 %d 是格式字符串,%ds 在一起没有意义,'s' 仅仅是在 %d 后面的一个普通字符。请看下面的例子:
- #include <stdio.h>
- int main()
- {
- int a=1234;
- printf("a=%ds\n", a);
- return 0;
- }
a=1234s
阅读全文
1 0
- 29 在屏幕上输出各种类型的数据
- 在屏幕上输出图案
- 在屏幕上输出菱形
- cout输出各种类型数据时的处理方式
- 一大段中文字符输出按指定屏幕长度和换行输出在屏幕上的方法。
- 在屏幕上输出图案:*与空格拼出的菱形
- 在屏幕上用*输出任何长度的菱形
- 在屏幕上输出以" * "构成的菱形
- 在屏幕上用“*”输出指定行数的菱形图案
- 在屏幕上输出星号组成的菱形图案。
- mysql如何把在屏幕上输出的结果输出到一个文件上?
- mysql如何把在屏幕上输出的结果输出到一个文件上?
- 数据库中的数据输出到屏幕上
- 在屏幕上输出你想说的话
- 在屏幕上输出以下图案
- C语言:在屏幕上输出信息
- c语言:在屏幕上输出图案
- 在屏幕上输出以下图案: * *** ***** ******* ********* *********** ************* ********
- [BZOJ4870][Shoi2017]组合数问题 矩阵快速幂
- mysql之 mysqldump 备份恢复详解
- js实现一个图片 懒加载插件
- POJ3067-Japan(树状数组)
- myeclipse2014配置spring
- 29 在屏幕上输出各种类型的数据
- 5月29日,每日20行。
- Javascript 严格模式
- 关于2017新生培育ACM归属感(折磨)计划
- CSS的各种居中方法
- opencv实现频域平滑图像
- P1434 滑雪
- 微信浏览器页面js刷新页面代码,解决微信jquery无法刷新问题
- EasyUI中DataGride数据表格的参数传递问题