C语言:一个很简单的问题

int a=100,b=13;
printf("%d%%d=%d\n",a,b,a%b);
这样表示两个整数求余可以吗(´;︵;`)为什么?

1、%d,表⽰按整型输出后⾯给出的变量的值。
2、%%d ,这就会被拆成两部分看待,⼀是“%%”在C语⾔中就是输出⼀个“%”,⽽是“d”就是⼀个普通字符,所以当“%%d”在⼀起时,其含义就是输出“%d”这两个字符。
3、%%%d ,3个%在⼀起,进⾏拆分的话,%%代表⼀个“%”字符,后⾯的%d⼜代表整型输出变量的值,所以当“%%%d”⼀起时,其最终含义就是输出⼀个字符%号再接着按整型输出变量的值。类似的\符号也是⼀样。
C语⾔中,%是转义符,也就是和%⼀起出现的后⾯的内容会转义后输出

应该是%d%%%d=%d