求各位懂得解释一下为什么会陷入死循环,初学者不理解

以下程序的运行结果是()。
main()
{
int i=1,sum=0;
while(i<10) sum=sum+1; i++;
printf("i=%d,sum=%d" ,i,sum);
}

A. i=10,sum=9

B. i=9,sum=9

C. i=2,sum=1

D.运行时,程序陷入死循环

因为i++在循环体之外,所以在循环内,i的值并不会改变,所以不会跳出循环

没有{},后面第一个分号为结束语句。所以,while里面的i值不会变,自然是死循环。