c语言,字符数组问题,请看我所写的代码哪里有错误,提交答案的时候总是提示格式错误?

c语言,字符数组问题,请看我所写的代码哪里有错误,提交答案的时候总是提示格式错误。

printf("%d ",n);错了。
比如期望输出是:3空格4空格5空格3
你的输出是:3空格4空格5空格3空格

你可以判断
if(i1==0) printf("%d",n)
else printf(" %d",n);追问

应该不是这个问题,题目中给的示例中,输出的最后一个数有空格,请看以下还有别的细节错误没。
我怀疑是字符赋值超量,即例如可以对某一行字符串赋值为90个字符,输出的时候会正常输出90.这个有办法解决么?

追答

题目明确说了80个字符,所以问题不在输入90个字符这。对于你这个越界也无所谓了,越界的内存都在你数组下一个成员的范围内,所以输入90个也输出90,其实也没什么大碍。

同样的,数组可以接受300个字符串,如果是他的测试样例中有超过300个字符串会提示segment fault的。如果按你说的提交答案的时候提示格式错误,那就是格式错误。

    第一个循环里的n = strlen(a[2])好像没作用。

    在第二个循环后面加一个printf("\n"); 有的OJ在最后没有换行符也算错的。

    你可以试试上面那样输出没空格的。

温馨提示:答案为网友推荐,仅供参考
相似回答