这个是一个简单的输出语句。但是可以让我们知道什么是格式符
格式符的目的是为了满足我们想要输出的什么样格式的数据存在的。(个人理解)
现在我介绍下有几种格式符。
1.%d和%i:带符号十进制形式输出整数的(正数输出+)
2.%o:以八进制无符号输出整数
3.%x:十六进制无符号输出整数,小写的x是输出小写的a-f,大写X得到 A-F
4.%u:无符号形式输出整数
5.%c:只能输出一个字符
6.%s:输出字符串
7.%f:小数形式输出单双精度,隐含输出6位小数(默认六位,想要获取更多就得需要下面知识了)
8.%e:以指数形式输出实数,这个%e和%E也是输出的时候e的大小写区别
9.%g:%f和%e格式中输出宽度较短的一种格式,不输出无意义的0.
这个是各种格式符的意义。但是这样子能基本满足我们想要输出的格式,而不是全部
下面是我的见解和做出的结果
我以%f为例做出我能想到的可能性,这个是我实验用到的例子123.456789
我想在输出页面中--10位数--向左对齐(默认向右)--小数点前面取2位--小数点后面取3位
我这个例子后面“-”是输出完的结束符,自己添加为了好识别。
从这个例子中我们可以发现默认是向右,前面加个负号是向左。
符号后第一位是说明这个输出占有多少位。(注意小数点占一位)
.代表小数点一种格式
第二位表示取小数点后面多少位。这个如果取多了会用0补充,取少了会四舍五入。
就是假设我取123.4567这个数的小数点后8位,小数点后输出结果是.45670000
如果我取小数点后2位,小数点后输出结果是.46
在这个问题中我发现,我理解了事情后没有去实践,认为的结果都是自己认为的。实践挺重要。
文章有问题或者要联系我[email protected]
c语言中的格式说明符,以%开头,后面接上字母,如%d表示整数,%f表示浮点数,%s表示字符串,%c表示字符等等!扩展:格式说明符详细说明
① d格式:用来输出十进制整数。有以下几种用法:
%d:按整型数据十进制的实际长度输出。
%md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。
%ld:输出长整型数据。
② o格式:以无符号八进制形式输出整数。
%d:按整型数据八进制的实际长度输出。
%lo:对长整型可以用格式输出
%mo:指定字段宽度用格式输出
③ x格式:以无符号十六进制形式输出整数。
%x:按整型数据十六进制的实际长度输出。
%lx:对长整型可以用格式输出
%mx:指定字段宽度用格式输出
④ u格式:以无符号十进制形式输出整数。
%u:按无符号整型数据十进制的实际长度输出。
%lu:对长整型可以用格式输出
%mu:指定字段宽度用格式输出
⑤ c格式:输出一个字符。
⑥ s格式:用来输出一个串。有几中用法
%s:例如:printf("%s", "CHINA")输出"CHINA"字符串(不包括双引号)。
%ms:输出的字符串占m列,如字符串长度大于m,将字符串全部输出。若串长小于m,则左补空格。
%-ms:如果串长小于m,则在m列范围内,字符串向左靠,右补空格。
%m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。
%-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。
⑦ f格式:用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法:
%f:不指定宽度,整数部分全部输出并输出6位小数。
%m.nf:输出共占m列,其中有n位小数,如数值宽度小于m左端补空格。
%-m.nf:输出共占n列,其中有n位小数,如数值宽度小于m右端补空格。
⑧ e格式:以指数形式输出实数。可用以下形式:
%e:数字部分(又称尾数)输出6位小数,指数部分占5位或4位。
%m.ne和%-m.ne:m、n和”-”字符含义与前相同。
此处n指数据的数字部分的小数位数,m表示整个输出数据所占的宽度。
⑨ p格式:输出指针地址
c语言最基本的格式,可以参考最基本的helloworld程序。hello
world程序虽然小,但是几乎包含和计算机软件技术相关的各种基础知识。
#include
int main()
{
printf("hello world\n")
return 0
}1、#include
预处理操作,谈到预处理操作,就需要了解c语言编译器生成二进制可执行文件的过程,一般为预处理阶断、编译阶断、汇编阶断、链接阶断。
预处理阶断:进行预处理操作,有预处理器来完成。
编译阶断:有c语言编译器完成,它负责将c语言源码转换成汇编指令。要深入下去就是编译原理知识。
汇编阶断:有汇编器完成,它负责将汇编指令转换成二进制机器码。要深入下去就是汇编语言以及反汇编、调试技术的内容
链接阶断:有链接器完成,它负责将二进制机器码装载成一个可执行文件,如果要深入的探索下去,就是windows或者linux平台上的库编程以及相可执行文件格式的学习,比如windows平台的pe文件格式,如果把pe格式搞明白,自己可以直接用二进制编写一个程序,这没有不可思议,实际上是网上有这方面的帖子。
2、int
main()
每个c语言程序有且只有一个main函数,一般的教科书上只有一句:“有系统调用main函数”,
那么到底
是系统中的谁调用了此函数,如此深入下去,可以加深对应用程序执行的理解,实际上在linux平台上有,_start()函数调用main函数,在windows平台上有启动函数maincrtstartup函数来调用main函数。
3、printf("hello
world\n")
这是c语言的成功之处之一,c语言将输入、输出操作设置为一个标准,这大大方便了应用程序开发,也提高了应用程序的可称植性。自己有兴趣可以深入的去探索。
4、return
0
return
0,返回值的0表示程序执行成功了。