1、输入 ---> 计算机 --->输出
[ 内存 ]
c的输入输出语句 ,并不是c语言本身的一部分。
输入输出语句是C标准库中提供的函数,它们不是C语言本身的一部分,但它们是C编程中必不可少的工具。常用的输入输出函数有printf、scanf、puts、gets、fprintf、sprintf等。这些函数可以让我们在程序中进行数据的输入输出,并且可以格式化输出数据。
#include <stdio.h> //std io (standard input output)
//单个字符的输入输出
putchar //输出
getchar //输入
//格式化的输入输出
printf
scanf
//字符串输入输出
puts
gets
2、getchar() //
int getchar(void); //函数原型
功能:
字符输入函数
参数:
void --空 不需要实参
返回值:
返回 读到的字符
3、putchar();
int putchar(int c); //函数原型
功能:
输出一个字符
参数:
@c 表示要输出的字符(对应的ASCII码值)
返回值:
输出了的 字符 对应的ascii码值
4、//格式化输入输出
printf();
功能: 格式化的输出
函数原型:
printf("格式控制字符串",输出列表)
printf("a = %d\n",a);
格式控制字符串:
(1)普通字符a= //原样输出
(2)占位符 %d //占位符 会被 后面的"输出列表"中的值替换
//占位符 与 输出列表 的对应关系
//一个占位符匹配 输出列表中的一个值
//依次匹配
//占位符 如果没有 匹配的参数
//此时 对应随机值
整型数据:
%d --- 转换为 有符号十进制形式
%o --- 转换为 八进制形式
%x --- 转换为 十六进制形式
x可以是大写,大写 表示 输出的十六进制中的字母 统统都是大写
%u --- 转换为 无符号十进制形式
浮点型:
%f --- 以十进制形式的小数输出,默认保留6位小数
%e --- 以科学计数法形式的输出小数
%g --- 以一种更简洁的方式输出,输出中不会打印无用0
字符型:
%c --- 转换为 字符形式 输出
%s --- 转换为 字符串形式 输出 //数组的时候 再说
5、%[辅助控制符]d
辅助控制符:
-m.nm //数字 ---表示指定的输出宽度
// 如果 实际数值宽度 < m ,此时 输出效果 默认右对齐
// 如果想左对齐 ,则m前面加上 一个 负号 (-)
// -m
//如果 实际数值宽度 >= m ,此时 输出实际的数值宽度
//如果右对齐时,此时 m前面可以写0,表示空出来的位置用0填充
# // %#o ---八进制输出时,前面加上0
// %#x ---十六进制输出时,前面加上0x 如果x是大写,则0x也是大写 0X
.n //浮点数 --表示保留n位小数
//字符串 --表示保留前n个字符
l long
ll long long int
h 相当于short 两个字节 h表示half 一半
hh 相当于char 一个字节%Lf //表示打印 long double
0-play
1-pause
2-set
3-exit
6、scanf();
功能: 格式化输入
scanf("格式控制字符串",地址列表)
给变量a中输入一个值
int a;
scanf("a=%d",&a);
格式控制字符串: //类似printf
普通字符 //原样输入 --scanf中一般不写不同字符 只写占位符占位符 //将输入的数字等转换为指定的格式
输入时 占位符 与 数据类型要做到严格匹配
整型数据:
%d --- 转换为 有符号十进制形式
%o --- 转换为 八进制形式
%x --- 转换为 十六进制形式
x可以是大写,大写 表示 输出的十六进制中的字母 统统都是大写
%u --- 转换为 无符号十进制形式
浮点型:
%f --- 以十进制形式的小数输出,默认保留6位小数
%e --- 以科学计数法形式的输出小数
%g --- 以一种更简洁的方式输出,输出中不会打印无用0
字符型:
%c --- 转换为 字符形式 输出
%s --- 转换为 字符串形式 输出 //数组的时候 再说
地址列表:
&a //& 取地址运算符
注意:
1. 空白符 (空格,回车,tab键)
2. scanf("%d\n"); //注意最后\n 是空白符 --作用表示匹配任意多个空白符
3. scanf匹配数据结束的情况
a.遇到非法字符 匹配结束
b.超出了指定宽度
输入缓冲区
scanf("%d,%d,%d",&a,&b,&c);
123,456,789\n ---> |123,456,789\n| 输入缓冲区
123a456