这节课所学内容及目前理解
c语言中是通过printf这个函数来实现打印内容到屏幕的。printf又叫格式化输出函数。
print,是打印的意思,format的英文是格式的意识,所有两个组合起来就叫格式化输出函数。
这个函数是c语言内部已经定好的,当我们使用它时就会调动底层函数。
一般情况下,一个函数就对应一个功能,而这个printf函数就是将内容打印到屏幕。
printf(“”); //这里小括号里面的双引号要用英文双引号,所有C语言代码里面的符号都是英文不能是中文。
转义符
转义符是C语言内部规定好的,用特定字符组合而成的具有特俗意义的符号,
这些符号运用比较多的是“\n”:它的意思是换行,如将printf函数将内容打印到屏幕上,如果没有这个符号那么内容将全部显示在一行上,读起来不便。
当我们加上后效果会不一样,阅读体验会突飞猛进的提高
下面是部分c语言转义符
字符 | 含义 |
\a | 响铃(BEL),当运行到这个字符时计算机会响一下.在printf打印到屏幕中可以最直观感受到 |
\b | 退格(BS),将当前位置向前移动一位并用该符号后内容替换原内容. |
\f | 换页(FF)将当前位移动到下页开头,在printf中体现为下一行开始. |
\n | 换行(LF)从当前位置开始新的一行,后面的内容全部换到新的一行上. |
\r | 回车(CR)将当前位置后内容移动到本行开头 |
\t | 水平制表(HT),跳到下一个TAB位置,在控制台中是下一行开头 |
\v | 垂直制表(VT) |
\\ | 表示输出这个符号自身,如\\n 将会输出\n而不在是换行,\加任何转义符都表示输出转义符本身,而不是实现转义符功能. |
\’ | 表示输出单引号 |
\” | 表示 |
\” /> 表示问号 | |
\θ | 表示空字符(NULL) |
\ddd | 1到3位八进制数所代表的任意字符 |
\xhh | 1到2位十六进制所代表的任意字符 |
\ | 链接符号单独用在代码内并且不与转义符相邻就表示,下一行内容与这一行是一段.当一句代码较长时,输入这个符号手动换上即可继续写这句代码. |
下面是课后测试题
下边是不同的编程语言实现在屏幕上打印“I love FishC.com”的代码
C
printf(“I love FishC.com!\n”);
C++
std::cout << "I love FishC.com!\n";
C#
System.Console.WriteLine("I love FishC.com!");
Python
print(“I love FishC.com!”)
java
System.out.println("I love FishC.com");
上面几种语言的打印内容到屏幕上C和Python的最简洁,而其他代码都有不同程度的繁琐。
为什么下边代码不能正常编译
#inc1ude int main(){printf("Hello World!\n");return O;}
答;因为头文件单词拼写错误其中l在这里写成了1正确代码如下
#includeint main(){printf("Hello World!\n");return 0;}
你知道以下程序打印的是什么内容吗?
#include int main(){printf("Hello world\b\b\b\b\bFishC\n");return 0;}
答:打印出来的内容是Hello Fishc,因为”\b”这个转义符的作用是将左边第一个字符替换为右边第一个字符,作用跟键盘上的退格键一样,按一下消除一个字符同时后面的字符向前移一位,而这个有五个这样的符号最后结果就是world被覆盖替换为Fishc。
下边代码错在哪?
#include int main(){printf(“小甲鱼说:好好学习才能天天向上!”);return 0;}
答:printf()内的’“”’符号用错了,用的是中文双引号,正确应当是英文双引号
#include int main(){printf("小甲鱼说:好好学习才能天天向上!");return 0;}
写一个 printf 函数,要求在屏幕上打印下边内容:
//答案#includeint main(){printf("FishC.com no \"fish\"\n");return 0;}
代码写成下边这样,能正常编译运行吗?
#includeint main(){printf("Hello World\n");return 0;}
答:可以正常运行,上面的代码只是都写在一行的了,但是该有的内容都不少所以可以正常运行。
用格式化输出函数打印一架飞机
#includeint main(){printf("FishC.com no \"fish\"\n\n");printf("下面是一架飞机\n");//打印一架飞机printf("^\n\ / \\ \n\ * * \n\ * * \n\ * * \n\ *** *** \n\**** ****\n\ ***** ***** \n\****** ******\n\ ******* ******* \n\******** ********\n\ * * \n\ * * \n\ * * \n\** **\n\ *** *** \n\**** ****\n\");return 0;}
第二种方式打印一架飞机
#includeint main(){printf("FishC.com no \"fish\"\n\n");printf("下面是一架飞机\n");//打印一架飞机printf("^\n\ / \\ \n\ * * \n\ * * \n\ * * \n\ *** *** \n\**** ****\n\ ***** ***** \n\****** ******\n\ ******* ******* \n\******** ********\n\ * * \n\ * * \n\ * * \n\** **\n\ *** *** \n\**** ****\n\");printf("下面又是一架飞机\n\n");printf("^\n");printf(" / \\ \n");printf(" * * \n");printf(" * * \n");printf(" * * \n");printf(" *** *** \n");printf("**** ****\n");printf(" ***** ***** \n");printf("****** ******\n");printf(" ******* ******* \n");printf("******** ********\n");printf(" * * \n");printf(" * * \n");printf(" * * \n");printf("** **\n");printf(" *** *** \n");printf("**** ****\n");return 0;}