C语言 main() {int x,y; x=11⼀3;y=5; printf("%%d,%%%d尀n",x,y); } 这个结果为什么是 %d,%3????

2024-12-02 14:41:27
推荐回答(4个)
回答(1):

%% 代表 %,所以"%%d"输出的是 字符"%d”
而"%%%d"相当于 先输出一个% 然后把 输出变量x的值。y没有输出。
如果你想输出%3, %5 可以这么写
#include
main()
{int x,y;
x=11/3;
y=5;
printf("%%%d,%%%d\n",x,y);
}

回答(2):

#include
void main()
{
int x,y;
x=11/3;
y=5;
printf("%%d,%%%d\n",x,y);
}
%%输出%,然后d是单个字符,这样x就无法输出,输出的只能是%d
%%%d等价于%和%d,输出%和y 的值,%3

回答(3):

printf里%%是%,然后跟着d, %%依然是"%", %d接受x,int型的x是11/3的结果也就是3。y在这里被丢弃。

回答(4):

//%号多打了,一个就行
#include
void main()
{int x,y;
x=11/3;y=5;
printf("%d,%d\n",x,y); }