int和float除以0为输出

Neo*_*Sci 2 c gcc

int main(void)
{
  int x;
  float y;

  x=10;
  y=4.0;

  printf("%d\n",x/y);

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

我使用gcc编译器编译了这段代码,运行时我得到0作为输出.
为什么此代码将输出设为0而不是2?

MBy*_*ByD 7

它不是分部,而是打印格式.

更改:

printf("%d\n",x/y);
Run Code Online (Sandbox Code Playgroud)

至:

printf("%f\n",x/y);
Run Code Online (Sandbox Code Playgroud)