C语言 输入输出格式(printf与scanf函数学习)

C语言中,使用scanf()函数获得输入信息。

以键盘输入十进制数为例,通常其输入格式为:

int a;
scanf("%d",&a);

注意用&符号,指明变量。

下文详述printf()函数。

在printf()函数中,通常分为2部分,第一部分为格式format,第二部分为数据。在格式中,要使用占位符%表示数据,这个数据应当在第二部分给出。下面是常用各种类型及占位符表示。

类型占位符对应信息
类型占位符
地址%p
int%d
unsigned int%u
long%l
unsigned long%lu
short%h
float%f
double%lf
指数记法的浮点数%e
char%c
bool%d
字符串%s
八进制%o
十六进制%x
带前缀八进制%#o
带前缀十六进制%#x

注:

  • m.nf 输出数据共占m列,其中有n位小数。如果数值长度小于m,左补空格;%-m.nf 同上,右补空格。
  • scanf()函数,对于数组与变量的输入格式有所不同,但本质上都指向地址:
char name[40];
scanf("%s",name);    //此处直接用name

char ch;
scanf("%c",&ch);    //此处需要用到取地址符&

上述代码中,利用字符数组name保存字符串时,不需要在末尾补上'\0',编译器会自动补上

上述代码中,如果在命令行输入name名字为Harry Bubble,则只读取Harry。因为scanf()开始读取输入以后,会在第一个空格(blank)、制表符(tab)或者换行符(newline)处停止读取,因此scanf()只会把句子中的第一个单词读入。可用gets()函数处理一般字符串。getchar()则能够读取每个字符。

  • 打印字符’%'时,需要使用两个%。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

字江慕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值