题样:
int my_strlen(const char*str){
int count=0;
//assert(str !=NULL);
while(*str !='\0'){
count++;
str++;
}
return count;
}
char* my_strcpy(char* dest,const char* src){
char*ret=dest;
// assert(dest!=NULL);
// assert(src!=NULL);
while(*dest++=*src++){
;
}
return ret;
}
void clear_032(char arr[]){
int len=my_strlen(arr);
int i=0,j=0;
for(i=0;i<len;i++){
if(arr[i]==' ')arr[i]='\0';
}
//全部空格变‘\0’end
char s[100]={0};
for(i=0,j=0;i<len;i++){
if(arr[i]!='\0'){
s[j]=arr[i];
j++;
}
}
s[j]='\0';
//整理存放在s
my_strcpy(arr,s);
}
void clear_repeat(char arr[]){
int len=my_strlen(arr);
int i=0,j=0;
char ch='0';
for(i=0;i<len;i++){
ch=arr[i];
for(j=i+1;j<len;j++)if(arr[j]==ch)arr[j]='\0';
}
//数组中只含有效字符与‘\0’
char s[100]={0};
for(i=0,j=0;i<len;i++){
if(arr[i]!='\0'){
s[j]=arr[i];
j++;
}
}
s[j]='\0';
//整理存放在s
my_strcpy(arr,s);
}
void my_order(char arr[]){
int i=0,j=0,len=my_strlen(arr);
char ch='0';
for(i=0;i<len-1;i++){
for(j=0;j<len-i-1;j++){
if(arr[j]>arr[j+1]){
ch=arr[j];
arr[j]=arr[j+1];
arr[j+1]=ch;
}
}
}
//冒泡结束
}
void dele(char arr[]){
int len=my_strlen(arr);
clear_032(arr);
clear_repeat(arr);
my_order(arr);
}
//[]~( ̄▽ ̄)~*