今天一个同学问了我个问题,printf(“%*f”,?) ?这里填什么,没见过诶,嘿嘿,(挠头)
查了一下百度上各位大神的答案,又get到了新知识,好开森
贴上代码,试了一下各种功能,欢迎补充(*  ̄3)(ε ̄ *)
#include<stdio.h>
#include<string.h>
int main()
{
float a = 0.2;
int b,c;
scanf("%*d%d",&b,&c);
printf("b=%dc=%d\n",b,c);
//%*f是用来禁止赋值的,
//在输入函数时,
//对应于%*f的地方,
//可任意打一个数,
//该值不会赋值给任何变量
//而之后输入的值会从第一个开始赋值
int d,f;
scanf("%*d%d%d",&d,&f);
printf("d=%df=%d\n",d,f);
int e,g;
scanf("%d%*d",&e,&g);
printf("e=%dg=%d\n",e,g);
printf("%*f\n",1,a);
printf("%.*f\n",1,a);
printf("%f\n",a);
printf("%*f\n",1,0.2);
printf("%.*f\n",1,0.2);
//该星号即为一个任意数字,与文件中的使用相同
//常用在文件输入,跳过某值,读别的值。
return 0;
}
运行结果:
1 2
b=2c=0
3 4 5
d=4f=5
6 7
e=6g=0
0.200000
0.2
0.200000
0.200000
0.2
--------------------------------
Process exited after 12.72 seconds with return value 0
请按任意键继续. . .