应该不是这个问题,题目中给的示例中,输出的最后一个数有空格,请看以下还有别的细节错误没。
我怀疑是字符赋值超量,即例如可以对某一行字符串赋值为90个字符,输出的时候会正常输出90.这个有办法解决么?
题目明确说了80个字符,所以问题不在输入90个字符这。对于你这个越界也无所谓了,越界的内存都在你数组下一个成员的范围内,所以输入90个也输出90,其实也没什么大碍。
同样的,数组可以接受300个字符串,如果是他的测试样例中有超过300个字符串会提示segment fault的。如果按你说的提交答案的时候提示格式错误,那就是格式错误。
第一个循环里的n = strlen(a[2])好像没作用。
在第二个循环后面加一个printf("\n"); 有的OJ在最后没有换行符也算错的。
你可以试试上面那样输出没空格的。