单项选择题

设有定义:char s[81];int i=0;,以下不能将一行(不超过80个字符)带有空格的字符串正确读入的语句或语句组是()。

A.gets(s);
B.while((s[i++]=getchar())!=′\n′);s[i]==′\0′
C.scanf("%s",s); 
D.do{scanf("%c",&s[i]);}while(s[i++]!=′\n′);s[i]=′\0′;