在c语言中的%*f是什么意思??有什么作用???

2024-12-11 18:47:19
推荐回答(4个)
回答1:

读语句中的格式 %*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它将按格式“跳过" 每行前三个数,只读入每行第4个数,存到 x[i] 里。

键盘输入一般不用这种格式,因为没有必要多打一个数,再遗弃它。

回答2:

%*f是用来禁止赋值的,在输入函数时,对应于%*f的地方,可任意打一个数,该值不会赋值给任何变量。

回答3:

*表示本输出项在读入后不赋给相应变量。
例:#include
void main()
{
int a,b;
scanf("%d %*d",&a,&b);
printf("%d%d\n",a,b);
}
%*d的值不会赋值给b变量。

回答4:

int a=3;
float b=2.0;

printf("%*f",a,b); == printf("%3f",b);