1- %*d、%*c、%*s在 scanf 和 printf 中的用法不同
1.1-在 scanf 中:
表示忽略掉要读的项。 - #include<stdio.h>
- int main()
- {
- char a='p', b='q';
- scanf("%*c %c", &a, &b);//假设输入i j,i会被忽略,j被变量a读取。变量b依旧是q
- printf("%c %c", a, b);
- return 0;
- }
复制代码
1.2-在 printf 中:
用于控制输出宽度。 - #include<stdio.h>
- int main()
- {
- int a = 6;
- printf("%*d\n", 5, a);
- return 0;
- }
复制代码
2- %*.*d、%*.*c、%*.*s在printf中的作用
小数点前*表示输出总宽度;
小数点后*表示输出位数。 - #include<stdio.h>
- int main()
- {
- int a = 6;
- printf("%*.d\n", 5, a);
- printf("%.*d\n", 5, a);
- printf("%*.*d",6,2, a);
- return 0;
- }
复制代码
|