输入不包含空格的任意字符串,删除字符串中所有AscII码值能被3整除的字符,并将剩余字符按由小到大的顺序输出

输入不包含空格的任意字符串,删除字符串中所有AscII码值能被3整除的字符,并将剩余字符按由小到大的顺序输出

供参考:

#include<stdio.h>
int main()
{
    char str[256],tmp;
    int  i=0,j=0;
    scanf("%s",str);
    while(str[i]!='\0')
    {
         if(str[i]%3 == 0)
            i++;
         else
            str[j++] = str[i++];
    }
    str[j] = '\0';
    for(i=0;str[i]!='\0';i++)
    {
        for(j=i+1;str[j]!='\0';j++){
            if (str[i] > str[j]){
                tmp = str[i];
                str[i] = str[j];
                str[j] = tmp;
            }
        }
    }
    printf("%s",str);
    return 0;
}

#include<bits/stdc++.h>
using namespace std;
int main()
{
  string a;
  getline(cin,a);
  sort(a.begin(),a.end());
  for(int i=0;i<a.size();i++)
  {
    if(int(a[i])%3==0)
    {
        a.erase(i,1);
    }
  }
  cout<<a;
}