C语言标准输入输出函数(printf/scanf)

  1. printf()函数的功能:向终端输出若干个任意指定类型的数据;

  1. 格式:printf(“格式控制”,参数列表);即由两部分组成:格式控制字符串与参数列表;

  1. 常用的格式字符

格式字符

说明

示例

样例

d,i

十进制整数

int a=567;printf("%d",a);

567

x,X

十六进制无符号整数

int a=255;printf("%x",a);

ff

o

八进制无符号整数

int a=65;printf("%o",a);

101

u

不带符号十进制整数

int a=567;printf("%u",a);

567

c

单一字符

char a=65;printf("%c",a);

A

s

字符串

printf("%s","ABC");

ABC

e,E

指数形式浮点小数

float a=567.789;printf("%e",a);

5.677890e+02

f

小数形式浮点小数

float a=567.789;printf("%f",a);

567.789000

g

e和f中较短一种

float a=567.789;printf("%g",a);

567.789

%%

百分号本身

printf("%%");

%

  1. 数据类型修饰符(在%与格式字符之间插入)

修饰符

功能

m

输出数据域宽,数据长度<m,左补空格,否则按实际输出

.n

对实数,指定小数点后位数(四舍五入)

对字符串,指定实际输出位数

-

输出数据在域内左对齐(缺省右对齐)

+

指定在有符号数的正数前显示正号(+)

0

输出数值时,指定左面不使用的空位置自动填0

#

在八进制和十六进制数前显示前导0、0x

l(L小写)

在d,o,x,u前,指定输出精度为long型

在e,f,g前,指定输出精度为double型

  1. scanf()函数功能:等待用户从键盘上输入数据,然后按格式控制的要求对数据进行转换后送到相应的变量地址中去。

  1. scanf()格式:scanf("格式控制”,地址表列);注意常规变量前面加&,数组名前不用加;

  1. scanf()函数在输入过程中如何去除垃圾输入的方法:一般不采用特殊控制手段,scanf输入默认从开始一直读取到默认分隔符,系统默认分隔符有三种:空格(‘ ’)、换行(‘\n’)、制表键(tab);

①针对字符串中存在较多空格,造成输入字符“截断”情况,可以采用以下格式:

scanf("%[^\n]",chen shao an); →系统就会从开始一直读取到第一个换行符,中间的空格也全部读入;

②针对字符输入,与前面数值输入存在垃圾字符的情况,采用以下方式:

scanf("%d%*c%c",&a,&ch); →利用中间的赋值抑制符,将输入的垃圾字符清除掉;

若a与ch的输入是两个scanf分开进行,则在两者中间插入一个getchar(),将垃圾字符清掉;

  1. 格式控制字符与printf()相同:d/o/x/c/s/f/e;

  1. 数据类型修饰符(在%与格式字符之间插入):

字符

说明

l(L小写)

用于输入长整型数据(%ld、%lo、%lx)以及double型数据(%lf、%le)

h

用于输入短整型数据(可用%hd、%ho、%hx)

m

域宽,指定输入数据所占宽度(列数)

*

表示本输入项在读入后不赋给相应的变量(赋值抑制符)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值