读语句中的格式 %*f 与 %f 的意义相同,就是从输入流中,按浮点数格式取一个输入元素。但 %*f 格式是 取一个输入元素后不传给任何参数,换句话说,就是丢弃它。%f是取一个输入元素后,传给读语句中给定的参数。
%*f %*d %*s 主要用于文件输入,作用是“跳过”某值,读别的值。例如输入文件内容:
1 10.1 Laowu 12.4
20 10.2 Laoliu 15.1
35 10.4 Laoba 9.2
...
有用的数是第四列,所以这样读:
for (i=0;i
键盘输入一般不用这种格式,因为没有必要多打一个数,再遗弃它。
%*f是用来禁止赋值的,在输入函数时,对应于%*f的地方,可任意打一个数,该值不会赋值给任何变量。
*表示本输出项在读入后不赋给相应变量。
例:#include
void main()
{
int a,b;
scanf("%d %*d",&a,&b);
printf("%d%d\n",a,b);
}
%*d的值不会赋值给b变量。
int a=3;
float b=2.0;
printf("%*f",a,b); == printf("%3f",b);