刚刚没仔细看程序,又看了看感觉有点离谱
![[呵呵]](/static/emoticons/u5475u5475.png)
首先,scanf读取%s时无法读入空格,也就是说如果按1 2 3这样输入,只有1会被读进c1字符串,空格和2以及之后的东西都会留在输入缓冲区。
其次,char数组是字符串,1作为int值为1,但在字符串里按照ascii,值为49,两者不可混为一谈。
再者,用%s读入整数数组确实是第一次见。即便把输入方式换为接受空格的fgets,字符串也会完整地记录空格,也就是说c1中存储的内容依次为 '1' 空格 '2' 空格 等等等,和整数数组是完全不一样的。读入整数数组只能用循环scanf的形式,一次只读一个数。
最后,逻辑问题,找到目标数字后直接return 0即可,循环外写没找到时的逻辑。按楼主现在的程序,j初始值为1,每次循环都j++,固定执行16次循环,j最后一定为17,肯定是不
正确的