有一个字符数组的内容为:“student a am i”
改为:“i am a student”
要求:
不能使用库函数
只能开辟有限个空间
#include<stdio.h>
#include<stdlib.h>
void Reversed(char* arr){
char* start = arr;
char* end = arr;
while (*end != '\0'){
++end;
}
--end;
while (start < end){
char tem = *start;
*start = *end;
*end = tem;
++start;
--end;
}
}
void Reversed1(char* arr){
while(*arr != '\0'){
char* start = arr;
char* end = arr;
while (*end != ' '&& *end != '\0'){
++end;
}
--end;
while (start < end){
char tem = *start;
*start = *end;
*end = tem;
++start;
--end;
}
while (*arr != ' '&&arr != '\0'){
++arr;
}
if (*arr != '\0'){
++arr;
}
}
}
int main(){
char arr[] = "student a am i";
printf("%s\n", arr);
Reversed(arr);
printf("%s\n", arr);
Reversed1(arr);
printf("%s\n", arr);
system("pause");
return 0;
}