问题遇到的现象和发生背景

问题相关代码,请勿粘贴截图
#include<stdio.h>
void main()
{
int x, max, min;
printf("请输入整数,以0结束");
scanf_s("%d", &x);
max = min = x;
while (x==0)
{
if (max < x) max = x;
if (min > x) min = x;
while (x != 0);
break;
}
printf("最大数是:%d,最小数是:%d\n", max, min);
}
运行结果及报错内容
输入一行整数结果运行出来最大值和最小值都是同一个数
我的解答思路和尝试过的方法
我想要达到的结果
输出最大值和最小值
