scanf详解[good]

1.scanf函数的一般形式

scanf(格式控制,地址表列)

int scanf(char *format[,argument,…]);

“格式控制”的含义同printf函数;“地址表列”是由若干个地址组成的表列,可以是变量的地址,或字符串首地址。

scanf()函数返回成功赋值的数据项数,出错时则返回EOF。
例题 scanf函数输入数据。

#include<stdio.h>

void main(){

int a,b,c;

printf(“input a,b,cn”);

scanf(“%d%d%d”,&a,&b,&c);

printf(“a=%d,b=%d,c=%d”,a,b,c);

}

格式字符 说明

%a 读入一个浮点值(仅C99有效)

%A 同上

%c 读入一个字符

%d 读入十进制整数

%i 读入十进制,八进制,十六进制整数

%o 读入八进制整数

%x 读入十六进制整数

%X 同上

%c 读入一个字符

%s 读入一个字符串

%f 读入一个浮点数

%F 同上

%e 同上

%E 同上

%g 同上

%G 同上

%p 读入一个指针

%u 读入一个无符号十进制整数

%n 至此已读入值的等价字符数

%[] 扫描字符集合

%% 读%符号

附加格式说明字符表修饰符 说明L/l 长度修饰符 输入”长”数据

h 长度修饰符 输入”短”数据

W 整型常数 指定输入数据所占宽度

* 星号 空读一个数据

hh,ll同上h,l但仅对C99有效。

(B) 空白字符空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符,空白符可以是space,tab,newline等等,直到第一个非 空白符出现为止。(C) 非空白字符一个非空白字符会使scanf()函数在读入时剔除掉与这个非空白字符相同的字符。

注:scanf()控制串知识就介绍到这里(应该比较齐全了^_^),如有遗漏下次补上。下面将结合实际例程,一一阐述.三、 scanf()函数的控制串的使用例1.#include “stdio.h”

int main(void)

{

int a,b,c;

scanf(“%d%d%d”,&a,&b,&c);

printf(“%d,%d,%dn”,a,b,c);return 0;

} 运行时按如下方式输入三个值:3□4□5