目录
一、输入输出的概念
(1)输入输出是以计算机主机为主体而言的。从计算机向外部输出设备(如显示器、打印机等)输出数据称为输出,从输入设备(如键盘、鼠标、扫描仪等)向计算机输入数据称为输入。
(2)C 语言本身不提供输入输出语句,输入和输出操作是由C函数库中的函数来实现的。在 标准函数库中提供了一些输入输出函数,例如, printf 函数和 scanf 函数。读者在使用它们时,千万不要误认为它们是C语言提供的“输入输出语句”。
(3)在使用系统库函数时,要用预编译命令"# include" 将有关的“头文件”包括到用户源文件中。在头文件中包含了调用函数时所需的有关信息。在使用标准输入输出库函数时,要用到 "stdio. h" 文件中提供的信息。
二、输入输出函数
1、字符数据输入与输出
(1)putchar 函数
putchar 函数(字符输出函数)的作用是向终端输出一个字符。其一般形式为:
putchar('a'); //成功输出字符的ASCII码值,失败返回-1
(2)getchar 函数
getchar 函数(字符输入函数)的作用是从终端(或系统隐含指定的输入设备)输入一 个字符。 getchar 函数没有参数,其一般形式为:
函数的值就是从输人设备得到的字符,返回值表示获取到的字符的 ASCII码值。
int ret;
ret = getchar(); //表示获取到getchar读取的字符的ASCII的值
2、格式的输入与输出
(1) printf 函数
printf("a = %d\n",a); //打印a的值
格式控制字符串
格式控制字符串由普通字符和占位符组成。在使用 printf 函数执行打印时,格式控制字符串中普通字符的样式在最终输出的结果里是一样的,如上面所例语句中,普通字符部分为 a = ,则输出结果中该部分以原样输出。占位符是匹配输出参数类型的,例子中 %d 即为占位符。
占位符:
①整型
%d ---- 转换为 有符号 十进制形式
%u ---- 转换为 无符号 十进制形式
%o ---- 转换为 八进制形式
%x ---- 转换为 十六进制形式
%X ---- 转换为 十六进制形式 a b c d e f以大写形式输出
②浮点型
%f ---- 转换为 十进制形式的小数,输出时默认保留6位小数,不足6位 补0
%e ---- 转换为 科学计数法的形式
%E ---- 指数形式中e 变成 大写 E
%g ---- 以 一种 更简洁的方式输出,同时不会输出无意义的0
③字符型
%c ---- 转换为字符形式输出
%s ---- 转换为字符串形式输出
④%[辅助控制符]d
# ---- %#o %#x //打印出8进制 或 16进制的前缀
m ---- 数字表示要输出的数据的宽度,默认右对齐
如果数据本身的宽度 > m 此时按照实际宽度输出
如果数据本身的宽度 < m 此时按照m宽度输出,空出来的位置填空格
-m ---- 按指定宽度输出 ,左对齐 (负号表示左对齐)
0m ---- 多出来的位置 可以填充0
.n ---- n数字 ,如 %.2f 表示保留2位小数
*占位符的表示:
l ---- long
ll ---- long long
h ---- half
hh ---- half half
附:
![](https://i-blog.csdnimg.cn/direct/6ee7cee7220a45318f7fee1c9e0dd2ad.png)
![](https://i-blog.csdnimg.cn/direct/ec56e6b3b5cb46c3836cd032491b3a4f.png)
(2)scanf 函数(格式输入函数)
一般形式:
格式控制字符串
含义同 printf 函数,占位从键盘中获取。