c语言问题

#include<stdio.h>
#include<string.h>
main()
{ char ss[10]="1,2,3,4,5";
gets(ss);strcat(ss,"6789");printf("%s\n",ss);
当输入ABC时,输出结果是()
}

当输入ABC时,输出结果是(ABC6789)
因为当执行gets(ss);时,
ss[10]就变为了"ABC",其后就是串结束符。尽管3,4,5仍存在于数组中,但是却已经被忽略掉了。后面的"6789"就被连接到'C'的后面了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-21
gets(ss)从ss首地址开始存放 原来的被覆盖 即现在是abc'\0'了,strcat把后面的字符串连接到前面字符的后面 从'\0'开始 最后添加新的'\0' 所以输出结果就是ABC6789了本回答被提问者和网友采纳
第2个回答  2012-06-21
ABC6789