gets[a]是输入一个字符串,不是字符,而你重复执行输入gets[a]不就还没有结束运行吗,输入还在进行
你这 要循环 30次呀
这个判断条件也不对,用 p < q
下面只需要比较 != 输入,加个标记true,有!= 的 ,则设置标记 为 false, 循环结束,标记还是true,打印时回文串