一、scanf
1、scanf的基本用法:
scanf函数是用于读取用户输入的(键盘输入到运行后框框里的数据)
int n;
scanf(“%d”,&n);
以上就是scanf用法的展示,由格式控制符(%d,%c,%u.....)和要输入数据的地址组成,格式控制符要和数据的类型一一对应,不然则会报错。我们也可以发现scanf函数的参数总是要比输入值得个数多一个,注意scanf函数也是有返回值的,返回值为成功读取数据的个数,如
这里我们可以看到成功读取了两个数字,所以ret的值为2
这里没有成功读取,所以ret的值为0
这里成功读取了一个数,所以ret为1
如果scanf在成功读取完数据之前提前终止(Ctrl+z)或者读取到了文件末尾则会返回EOF(-1)如
2、scnaf中各种格式控制符的读取规则
%d:读取数字
使用%d读取字符时会跳过空白字符(空格、换行符、制表符等),只会读取数字,遇到非数字则会直接停止读取
%c:读取字符
使用%c读取字符时都会读取,包括空白字符,注意:在我们键盘上换行实际上是输入了一个‘\n’,会被%c读取
从上面可见m读取了空格
%s:读取字符串
%s在读取字符串时会从第一个非空白字符开始读取,遇到空白字符停下来,同时我们也可以在%s之间加上数字来限定读取字符的个数,如%10s,这就意味着最多读取10个字符
二、printf
1、printf的基本用法
printf是一个打印输出函数,将想要的东西打印到控制屏幕上,如
printf和scanf一样也有格式控制符(%c%s%d等等)printf内还可以加一些转义字符,如'\n'、'\t'、'\b'等等,格式控制符和后面的参数也要一一对应,
2、printf中限制的最小位数
printf(“%5d”,123),这个代码意味着所打印的数最小为5位,不足的话用空格填充,这种写法是右对齐,不足空格填充在左边,printf(“%-5d”,123),这种写法是左对齐,不足空格填充在右边
如果所要打印的数字长度大于你限制的长度,则会正常打印
printf(%5.2f,42.2312)表示整个数字长度为5,小数点后保留两位,注意:小数点也算一个长度
其他格式控制符类似,可以自己去尝试一下
注意:“abcdef”的字符数为7,展开来就是abcdef\n。
3、printf的返回值
printf的返回值为为你所要打印的数字和字符长度之和
这里就是123三个数字加上‘\n’一个字符,和为4
这里又加上了一个字符‘\t’,所以为5
以下为各种格式控制符可以了解一下: