谢谢楼上的同学.
我把 if(*q1!='\0') q1++; 中的 if 改成了 while 就对了.
我明白了,原来if只能做判别用,只能进行一次,只有当他和for连用时才可以循环,
而while就可以自循环.
那么while和for的用处应该一样吧?
对了,另外,我把 while(q1>=(p1+t-1)) { *(q1+i)=*q1;q1--;}中的i 改成了i+1,为什么运行的答案还是对的?
还有,while(*q1!='\0') q1++;
此时q1指向p1字符的末端,到底是p1的最后一个字符还是指向'\0'?
我喜欢清新的空气!