编写函数void change(char *a,char *b,char*c

  1. #include <stdio.h>  
  2. #include <string.h>  
  3. void swap(char *a,char *b)  
  4. {  
  5.     char temp;  
  6.     temp = *a;  
  7.     *a = *b;  
  8.     *b = temp;  
  9. }  
  10. void change(char *a,char *b,char *c)  
  11. {  
  12.     int len_a = strlen(a);  
  13.     int len_b = strlen(b);  
  14.     int i = 0;  
  15.     int j = 0;  
  16.       
  17.     for(i = 0;i < len_b/2;i++)                                           //将b字符串逆向存放  
  18.     {  
  19.         swap(&b[i],&b[len_b-i-1]);  
  20.     }  
  21.     if(len_a > len_b)                                                    //a字符串比b长的情况  
  22.     {  
  23.         while(*a)  
  24.         {  
  25.             while(*b)  
  26.             {  
  27.             *c = *a;  
  28.             c++;  
  29.             a++;  
  30.             *c = *b;  
  31.             c++;  
  32.             b++;  
  33.             }  
  34.             *c = *a;  
  35.             c++;  
  36.             a++;  
  37.         }  
  38.     }  
  39.     else                                                                 //b字符串比a长的情况  
  40.     {  
  41.         while(*b)  
  42.         {  
  43.             while(*a)  
  44.             {  
  45.             *c = *a;  
  46.             c++;  
  47.             a++;  
  48.             *c = *b;  
  49.             c++;  
  50.             b++;  
  51.             }  
  52.             *c = *b;  
  53.             c++;  
  54.             b++;  
  55.         }  
  56.     }  
  57. }  
  58.   
  59. int main()  
  60. {  
  61.     char a[100] = {0};  
  62.     char b[100] = {0};  
  63.     char c[100] = {0};  
  64.   
  65.     printf("please input string a:\n");  
  66.     scanf("%s",a);  
  67.     printf("please input string b:\n");  
  68.     scanf("%s",b);  
  69.   
  70.     change(a,b,c);  
  71.   
  72.     printf("the result is:%s\n",c);  
  73.     return 0;  
  74. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值