C语言|将一个单词倒置,标点符号不倒置-创新互联
比如:i like lay. 倒置后:lay. like i
思路:1.先将所有字母倒置:.yal ekil i
2.将1中倒置的再进行倒置(按遇到空格就停下,然后移动到下一位再重新倒置):lay. like i
代码:
void reserse1(char* start,char* end) {
while (start
char tmp = 0;
tmp = *start;
*start = *end;
*end = tmp;
start++;
end--;
}
}
//将一个单词倒置,标点符号不倒置
//比如:i like lay. 倒置后:lay. like i
//思路:1.先将所有字母倒置:.yal ekil i
//2.将1中倒置的再进行倒置(按遇到空格就停下,然后移动到下一位再重新倒置):lay. like i
void reverse() {
char arr[20] = {1};
//scanf("%s", arr);
// 使用scanf遇到空格就不读取打印了
//1.先将所有字母倒置:.yal ekil i
//使用gets()
gets(arr);
//求字符串长度
int len = strlen(arr);
reserse1(arr,arr+len-1);
//2.将1中倒置的再进行倒置(按遇到空格就停下,然后移动到下一位再重新倒置):lay. like i
char* start = arr;
while (*start)
{
char* end = start;
while (*end !=' '&&*end !='\0')
{
end++;
}
//逆序一个单词
reserse1(start, end - 1);
if (*end==' ')
{
start = end + 1;
}
else
{
start = end;
}
}
printf("%s", arr);
}
结果:
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
新闻名称:C语言|将一个单词倒置,标点符号不倒置-创新互联
分享地址:http://scyanting.com/article/jsjpo.html