楼上说的好象不队,s是数组名,代表数组的首地址,是地址,因此scanf("%s",s);没有错
s已经代表数组首地址了不需要取地址运算符号
我刚才试过了,只要字符连续中间不带空格就可以了。我是这样理解的:前面一个例子你用“”将 i am a boy送给s,整个是个字符串,而后面的例子是你输入字符串,因此中间不能带空格,空格后面的字符无效,就是说编译器将空格前面的字符视为一个字符,后面的又是视为另一个字符,也就是你刚才输入的i am a boy 是4个字符,因此只输出i
写错了 是4个字符串
可以用gets函数。