|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <stdio.h>
- #include <string.h>
- void mystrcat(char *s1, char *s2, char *new_s)
- {
- int i1, i2, i = 0 ,j = 0, n;
- char *a, *b, *c, m;
- i1 = strlen(s1);
- i2 = strlen(s2);
- a = s1;
- b = s2;
- c = s2+i2-1;
- n = (i2-1)/2;
-
- for( ; b <= s2+n; b++,c--)
- {
- m = *b;
- *b = *c;
- *c = m;
- }
- while(*(s1+j) != '\0' && *(s2+j) != '\0')
- {
- *(new_s+ (i++) ) = *(s1+j);
- *(new_s+ (i++) ) = *(s2+(j++) );
- }
- if(*(s1+j) == '\0')
- {
- while(*(s2+j) != '\0')
- *(new_s+ (i++) )=*(s2+(j++) );
- }
- else
- {
- while( *(s1+j) != '\0')
- {
- *(new_s+ (i++) )=*(s1+(j++) );
- }
- }
- *(new_s+ i )='\0';
- printf("两个字符串交叉连接的结果是:\n");
- puts(new_s);
- }
- int main()
- {
- char a1[100],a2[100],b[201];
- char *s1,*s2,*new_s;
- s1=a1;
- s2=a2;
- new_s=b;
- printf("请输入一个字符串:\n");
- scanf("%s",a1);
- printf("请输入另一个字符串:\n");
- scanf("%s",a2);
- mystrcat(s1,s2,new_s);
- return 0;
- }
复制代码
详细说说写这个代码过程中容易遇到的困难
(包括思路等) |
|