1.逆序排列
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char *p = (char * )malloc(sizeof(char) * 100);
printf("please input ;\n");
scanf("%s", p);
{
char *p = (char * )malloc(sizeof(char) * 100);
printf("please input ;\n");
scanf("%s", p);
int length,i;
length = strlen(p);
char *q = p + length - 1;
for(i = 0; i < length; i++)
{
printf("%c", *q);
q--;
}
printf("\n");
free(p);
renturn 0;
}
length = strlen(p);
char *q = p + length - 1;
for(i = 0; i < length; i++)
{
printf("%c", *q);
q--;
}
printf("\n");
free(p);
renturn 0;
}
二、利用指针函数
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdlib.h>
#include <string.h>
char *reverse(char *s)
{
char *q = (char*)malloc(sizeof(char)* 20);
if (NULL == q)
{
printf("malloc failure\n");
}
int length = strlen(s);
q = q + length -1;
int i;
{
char *q = (char*)malloc(sizeof(char)* 20);
if (NULL == q)
{
printf("malloc failure\n");
}
int length = strlen(s);
q = q + length -1;
int i;
for(i = 0; i < length; i++)
{
*q-- = *s++;
}
q++;
{
*q-- = *s++;
}
q++;
return q;
}
int main()
{
char *tmp;
char *p = (char*)malloc(sizeof(char)* 20);
if (NULL == p)
{
printf("malloc failure\n");
}
}
int main()
{
char *tmp;
char *p = (char*)malloc(sizeof(char)* 20);
if (NULL == p)
{
printf("malloc failure\n");
}
printf("please input \n");
scanf("%s", p);
scanf("%s", p);
tmp = reverse(p);
printf("%s\n",tmp);
free(p);
free(tmp);
return 0;
}
printf("%s\n",tmp);
free(p);
free(tmp);
return 0;
}