%% 代表 %,所以"%%d"输出的是 字符"%d”
而"%%%d"相当于 先输出一个% 然后把 输出变量x的值。y没有输出。
如果你想输出%3, %5 可以这么写
#include
main()
{int x,y;
x=11/3;
y=5;
printf("%%%d,%%%d\n",x,y);
}
#include
void main()
{
int x,y;
x=11/3;
y=5;
printf("%%d,%%%d\n",x,y);
}
%%输出%,然后d是单个字符,这样x就无法输出,输出的只能是%d
%%%d等价于%和%d,输出%和y 的值,%3
printf里%%是%,然后跟着d, %%依然是"%", %d接受x,int型的x是11/3的结果也就是3。y在这里被丢弃。
//%号多打了,一个就行
#include
void main()
{int x,y;
x=11/3;y=5;
printf("%d,%d\n",x,y); }