C语言把字符串a复制给字符串b,然后倒序输出字符串b

C语言把字符串a复制给字符串b,然后倒序输出字符串b
#include <stdio.h>
#include <string.h>
void myreverse(char *s)
{
char* p=s+strlen(s)-1;
    char t;
    while(s<p)
	{
		t=*p;
		*p=*s;
		*s=t;
		p--;
		s++;
	}
}

int main()
{
    int i;
    char a[30] = "first string(1)";
    char b[] = "another string(2)";
    printf("before : %s\n", a);
    for(i=0;b[i];i++)
        a[i]=b[i]; //复制除'\0'以外的每一个字符
    a[i]='\0'; //置串尾标记'\0'
    myreverse(a);
    printf("after : %s\n", a);
    return 0;
}

 

#include<stdio.h>
#include<string.h>
int main(){
    char a[] = "Hello World!";
    char b[strlen(a)];
    strcpy(b,a);
    for(int i=strlen(b)-1;i>=0;i--) printf("%c",b[i]);
    return 1;
}

觉得没有问题,请采纳结题