c语⾔scanf⽤法
C语⾔中scanf的⽤法和注意事项
scanf概念
scanf是格式输⼊函数,功能是在屏幕上输⼊指定的信息。简单的来说和printf相似却不相同。
scanf调⽤格式: scanf("<;格式化字符串>",<;地址表>);
如:
#include <stdio.h>
int main()
{
int a,b,c;
printf(“input three data:\n”);//使⽤ scanf 之前先⽤ printf 提⽰输⼊。
c语言char的用法scanf("%d%d%d",&a,&b,&c); // scanf 的“输⼊参数”中,前⾯的取地址符&记住
printf("%d,%d,%d/n",a,b,c);
return 0;
}
运⾏时按如下⽅式输⼊三个值:
3□4□5↙(输⼊a,b,c的值)
3,4,5 (printf输出的a,b,c的值)
(1) &a、&b、&c中的&是地址运算符,分别获得这三个变量的内存地址。
(2) "%d%d%d"是按⼗进值格式输⼊三个数值。输⼊时,在两个数据之间可以⽤⼀个或多个空格、tab键、回车键分隔。以下是合法输⼊⽅式:
① 3□□4□□□□5↙
② 3↙
4□5↙
③ 3(tab键)4↙
5↙
我们常⽤到的字符串有:
%c 读⼊⼀个字符。
%d 读⼊⼗进制整数。
%f ⽤来输出实数,以⼩数形式输出。
%lf ⽤来输出实数,以更长的⼩数形式输出。
分享下学习中明⽩的注意点:
1 当定义⼀个字符变量时,在键盘上输⼊⼀个scanf会吸收回车和空格字符,为了进⾏代码的可⾏性需在函数结束前加函数getchar()进
⾏吸收。例如:
定义⼀个字符z,是scanf是从键盘上获取⼀个值。因为我们定义的是⼀个字符,所以将键盘上所有获得的字符赋值给z,⽽空格和回车也是字符,会影响字符赋值给z,所以要在末尾加个getchar()函数进⾏吸收。
没加getchar():
程序第⼆次进⾏运算时回车成了运算符了。
正确结果是:
2 scanf函数中的“格式控制”后⾯应当是变量地址,⽽不是变量名。例如,若a和b为int型变量,如果写成
scanf("%f%f%f",a,b,c)是错误的。
scanf 的使⽤⼩结:
1 在 scanf 的“输⼊参数”中,变量前⾯的取地址符&不要忘记。
2 scanf 中双引号内,除了“输⼊控制符”外什么都不要写。
3 “输出控制符”和“输出参数”⽆论在“顺序上”还是在“个数上”⼀定要⼀⼀对应。
4 “输⼊控制符”的类型和变量所定义的类型⼀定要⼀致。对于从键盘输⼊的数据的类 型,数据是⽤户输⼊的,程序员是⽆法决定的,所以在写程序时要考虑容错处理。
5 使⽤ scanf 之前先⽤ printf 提⽰输⼊。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论