读入一行文本,包含若干个单词(以空格间隔,%结尾)。将其中以 A 开头的单词与以 N 结尾的单词,用头尾交换的办法予以置换。
#include "stdio.h"
void main()
{
char str[60];
gets(str);
char *p, *q,r;
p = q = str;
while(*p != '%')//当字符不是结束符时
{
while(*p == ' ')//字符为空格时,p指向下一个字符
{ printf("%c", *p++);
q = p;//记录当前字符
}
while(*p != ' ' && *p != '%')//输入一个字符后,p自增
{ p++;}
if(*q == 'a' || *(p-1) == 'n')//交换字符的条件
{
r = *q;
*q = *(p-1);
*(p-1) = r;
}
while(q != p)
printf("%c", *q++);
}
}