zoukankan      html  css  js  c++  java
  • 字符串反转

    字符串反转

    #include <stdio.h>
    #include <string.h>
    void fun(char a[])
    {
    int i,length;char t;
    length=strlen(a);
    for(i=0;i<length/2;i++)
    {
    t=a[i];
    a[i]=a[length-1-i];
    a[length-1-i]=t;
    }
    }
    main()
    {
    char a[10];
    printf("input a string:");
    gets(a);
    puts(a);
    fun(a);
    puts(a);
    }
    #include <stdio.h>
    #include <string.h>
    void fun(char a[])
    {
     int i,length;char t;
      length=strlen(a); 
      for(i=0;i<length/2;i++)
      {  t=a[i]; 
       a[i]=a[length-1-i]; 
       a[length-1-i]=t; 
       }
    }
    main()
    { char a[10];
     printf("input a string:");
      gets(a); 
      puts(a);
       fun(a);
        puts(a);
    }
    #include <stdio.h>
    int main()
    {
        char m;
        m=reverse("abcdef");
          printf("%c",m);    
        return 0;
    }
    
    char reverse(char *str)
    {
        char* end=str;
        char tmp;
        if(str)  
        {
            while(*end) //找出字符串末尾 
            {
                    ++end;            
            }
            --end;    //回退一个,找到null 
           while(str<end)
           {
               tmp = *str;
               *str++=*end;
            *end--=tmp;    
           }     
       }
       return *str;
     
    }
    待测-----还没调试通

     例三:字符串反转(用递归和指针的方式)

    #include <stdio.h>
    void reverse(char *p)
    {
        if( *p=='')
         return ;
         reverse(p+1);
         printf("%c",*p);    
    }
    int main()
    {
        reverse("abcdefghjklmn");
        printf("
    ");
        return 0;    
        
    }

     例四:字符串的长度

    #include <stdio.h>
    void reverse(char *p)
    {
        if( *p=='')
         return ;
         reverse(p+1);
         printf("%c",*p);    
    }
    int main()
    {
        reverse("abcdefghjklmn");
    //为4
        printf("%d",sizeof("abc"));
    //为3 
            printf("%d",strlen("abc"));
        printf("
    ");
        return 0;    
        
    }

    最后,调试通过了,如下

    #include <stdio.h>
    void reverse(char *str)
    {   
     char *z=str;
     char *end=str;
       char tmp;
        if(str)  
        {
            while(*end) 
            {             
                    ++end;           
            }
            --end;    //回退一个,找到null 
         while(str < end)
           {            
               tmp = *str;   
              *str++ = *end;
               *end--=tmp;  
           }          
       }  
     printf("%s",z); 
     
    }
    int main()
    {
      char s[]="1234546";
        reverse(s);
    //上面两句,如果直接这么写 reverse("123456789"); 就会有一个报警错误
        return 0;
    }

    例:帮助别人调试通过版

    #include<stdio.h>
    #include<string.h>
    void inverse(char str[])
    {
        char ch;
        int i,n;
        n=strlen(str);
        for(i=0;i<=(n/2);i++)
        {
            ch=str[i];
            str[i]=str[n-i-1];
            str[n-i-1]=ch;
        }
    }
    int main()
    {
    
        char str[100];
        printf("input string:");
        scanf("%s",str);
        inverse(str);
        printf("inverse string:%s
    ",str);
        return 0;
    }

    例子:字符串反转(java版本)

    class Program
        {
            static void Main(string[] args)
            {
                Console.Write("请输入要进行反转的字符串:");
                string mystring =Console.ReadLine();
                string str = Strfanz(mystring);
                Console.WriteLine("反转后的字符串为:"+str);
            }
            static string Strfanz(string str)
            {
                if(str.Length==1)
                    return str;
                string Strend = str.Substring(str.Length-1, 1);//取得最后一个字符(str.Length-1为取得最后一个字符的索引,1为所取长度);
                Strend += Strfanz(str.Substring(0, str.Length - 1));//将余下的字符串进行递归,并加在Strend后面;
                return Strend;
            }
    
        }
    
    
    
    
  • 相关阅读:
    病历管理系统(附源码)
    2013年未之wpf项目乱述
    非农行情的做单策略
    Open Source Trading Platforms ( who needs mt4 ?)
    【原创】如何获得近10年的1分钟完整历史数据并导入MT4
    MetaTrader 4客户端的秘密
    六张图教你交易美国5月非农数据
    创业手札
    如果想开公司,你必须了解这些!!创业的人收藏吧!!
    如何开设港股和美股投资账户
  • 原文地址:https://www.cnblogs.com/bluewelkin/p/3565011.html
Copyright © 2011-2022 走看看