,,,,,C语言填空题求解答

图片说明
分析

应该是3。
因为每次循环的头一句就是将x赋值给max,虽然循环最后有if判断,可是在下一次循环时,第一件做的事就是重新给max赋值,所以max总是最后一次输入的值。而-1是退出循环的条件,所以最后max是3。

结果当然是最大的数 =8

=3把 没去自己编译

这个程序是错的,在刚刚进入循环的后max=x,然而此时的x变量并没初始化,自己可以编程试试

6 2 1 8 0 3 -1
max=3

int main()
{

int x=0, max=0;
do
{
    max = x;
    scanf("%d", &x);
    if (x > max) max = x;
} while (x != -1);
printf("max=%d\n", max);

scanf("%d", &x);


return 0;

}