| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2847 人关注过本帖, 1 人收藏
标题:I Love China !逆转为 China Love I !
取消只看楼主 加入收藏
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
结帖率:100%
收藏(1)
已结贴  问题点数:20 回复次数:6 
I Love China !逆转为 China Love I !
程序代码:
#include <stdio.h>
#include <string.h>
void Reverse(char *a,int n);
int main()
{
    char str[1028];
    gets(str);
    Reverse(str,strlen(str));
    puts(str);
    return 0;
}
void Reverse(char *a,int n)
{
    int left = 0;
    int right = n-1;
    while(left < right)
    {
        char temp = a[left];
        a[left++] = a[right];
        a[right--] = temp;
    }
}

这是一个字符串的逆序。怎么修改一下,让它能实现 I Love China !逆转为 China Love I !
求助!!!
搜索更多相关主题的帖子: China 
2015-04-09 13:51
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
收藏
得分:0 
程序代码:
#include <stdio.h>
#define IS_LETTER(_CH_)    \

 (_CH_ >= 'A' && _CH_ <= 'Z' || _CH_ >= 'a' && _CH_ <= 'z')
void swap(char *head,char *tail);
int main()
{
    char str[] = "I Love China!";
     char *head = str;
     char *tail = str;
     while (*tail != '\0')
          tail ++;
     swap(head, tail - 2);
     tail = head;
     while (*head != '\0') 
     {
          while (!IS_LETTER(*head) && *head != '\0')
          {
             head ++;     
        }
          tail = head;
          while (IS_LETTER(*tail))
          {
            tail ++;      
          }               
          swap(head, tail - 1);
         head = tail;
     }
     puts(str);
     return 0;
}
void swap(char *head, char *tail)
{
    while (head < tail) 
    {
          *head ^= *tail;
          *tail ^= *head;
          *head ^= *tail;
          head ++;
          tail --;
     }
}
已解决!!!

风回小院庭芜绿,柳眼春相续
2015-04-10 10:53
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
收藏
得分:0 
回复 5楼 TonyDeng
什么叫重构?帮忙解释一下。

风回小院庭芜绿,柳眼春相续
2015-04-10 11:17
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
收藏
得分:0 
回复 8楼 code力力
你试了吗  绝对不是这么弄的

风回小院庭芜绿,柳眼春相续
2015-04-10 12:58
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
收藏
得分:0 
回复 18楼 皮影09
继续处理吧  I Love China!为China Love I!应该在同一行上  不换行

风回小院庭芜绿,柳眼春相续
2015-04-11 17:14
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
收藏
得分:0 
回复 23楼 code力力
你也是就题做题 根本没按我的要求来 要不你重新写个?

风回小院庭芜绿,柳眼春相续
2015-04-11 22:28
纳兰伽香
Rank: 10Rank: 10Rank: 10
来 自:北京
等 级:贵宾
威 望:10
帖 子:426
专家分:1650
注 册:2015-4-5
收藏
得分:0 
回复 25楼 code力力
看清楚我一楼怎么说的啊  大哥 再说要是不按照1楼的那个思路的话  有很多种实现实现方法的 我也没必要这么纠结

风回小院庭芜绿,柳眼春相续
2015-04-11 22:59
快速回复:I Love China !逆转为 China Love I !
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016547 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved