谢谢 两种方法都试了下都有看不懂的地方 2 楼的方法我有好多地方都看不明白4楼的方法 我理解起来还可以 if(abs(i)==M || abs(j)==M) //这是控制第一圈 printf("H");if(abs(i)==M-1 || abs(j)==M-1) //这是控制第二圈 printf("T");else //用else 控制剩下的圈 printf("%d",M-1-(abs(i)>abs(j)?abs(i):abs(j))); // 这个不太懂..能不能讲一下下