c语言之scanf,printf

scanf函数和printf函数是c语言中常用的输入和输出函数,现在总结一下有关这两个函数的用法。

1.scanf

功能:标准输入函数,可以从标准输入设备(键盘)读取输入信息
用法:int scanf(const char *format,…)

例1:
int buffer=0;
scanf(“%x”,&buffer);
printf(“%d\n”,buffer);
输入:f
输出:15
读取一个十六进制整数,输出一个十进制整数。
scanf以固定格式读取输入,以下是一些scang函数支持的读取格式:
%d            读取一个十进制整数
%c            读取一个字符
%f             读取一个单精度浮点数
%x            读取一个十六进制整数
%X           读取一个十六进制整数
%p            读取一个地址
%lf            读取一个双精度浮点数
%lld          读取一个十进制64位整数

例2:
char buffer[20];
scanf(“%[a-z]”,buffer);
输入:abcdABCD
输出:abcd
scanf可以只读取指定字符集中的字符
a-z表示小写字母集合
A-Z表示大写字母集合
^  表示集合的补集
*   表示不读取集合中的字符
利用scanf可以从固定格式的字符串中提取想要的部分
如:从qq邮箱字符串中提取qq号   “1234567891@qq.com”.
可以这样写 :
scanf(“%[0-9]”,buffer);
如果要提取后面的域名,则可以这样写:
scanf(“%*[^@]@%s”,buffer);
如果想要用scanf来接收含空格的字符串可以这样写:
scanf(“%[^ ]”,buffer);
例3:
int a,b,c;
scanf(“%1d%2d%3d”,&a,&b,&c);
printf(“%d %d %d\n”,a,b,c);
输入:123456
输出:1 23 456
scanf可以读取指定位数的十进制整数,十六进制整数,浮点数。
当读取指定位数的浮点数时小数点也算一位。

2.printf

功能:将信息输出到标准输出
用法: printf(const char *format,…)
printf函数的固定格式输出同scanf的固定格式输入。

printf可以将数据以指定宽度和对齐方式输出到屏幕:
int buffer=10;
printf(“%5d\n”,buffer);
将buffer按五位固定宽度输出到屏幕,并向右对齐,如果位数不足五位则用空格补齐,如果超过五位则按实际位数输出。
printf(“%-5d\n”,buffer);
向左对齐

如果要控制输出的浮点数小数点后的位数用以下方式:
float buffer=1.4321;
printf(“%10.3f\n”,buffer);
输出:1.432
%10.3f    将浮点数保留三位以十位宽度(小数点也占一位)输出到屏幕,并向右对齐。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值