单选题 有如下程序段: int i=100; while ( int i=10 ){ cout<<'*'; i--; }运行时输出"*"的个数是
【正确答案】 D
【答案解析】解析:首先,程序定义了局部变量i并初始化为100,在while循环中定义了同名局部变量i并初始化为10,由变量的作用域可知while循环中的i屏蔽了while语句前的局部变量i,所以while循环体中的i初值为10;其次,由于while循环的循环条件为inti=10,每次循环都是重新定义并初始化i,条件始终为真,所以while循环将会无限执行下去,输出无穷个"*"。答案为D。