李洋疯狂C语言之有关“you are come from shanghai”逆序(二)

来源:互联网 发布:收购域名骗局 编辑:程序博客网 时间:2024/05/21 17:04

今天将指针和函数全部学完了,之前这题的做法,现在看来有点繁琐,于是乎做了一些修改,下面是新的代码

//you are from shanghai逆序#include <stdio.h>#include <string.h>         //下面要用到strlenvoid reverse(char* str);int main(){    char str[] = "you are from shanghai";    reverse(str);           //全部逆序    char* p1 = str;     char* p2 = str;    while (*p2)             //p2向后移动    {           if (' ' == *p2)     //遇到空格则将上一个单词进行逆序        {            *p2 = '\0';                  reverse(p1);            *p2 = ' ';             p1 = p2 + 1;        }        p2++;    }    reverse(p1);            //将‘\0’之前的那个单词逆序    puts(str);              //输出    return 0;}void reverse(char* str)     //函数功能:在一段范围内进行逆序{    int len = strlen(str);    int min = 0;    int max = len - 1;    while(min < max)    {        int tmp    = str[min];        str[min++] = str[max];        str[max--] = tmp;    }}
阅读全文
0 1
原创粉丝点击