为什么我这个代码做第三个样例会莫名其妙的出现一个?
求调试
#include<iostream>
#include<string>
#include<cmath>
#include<math.h>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<cstring>
#include<queue>
#include<stack>
#include<set>
#include<map>
#include<cstdlib>
#include<time.h>
#include<iomanip>
#include<stdio.h>
#include<stdlib.h>
using namespace std;
string s;
int pd(char s){
if(s=='a'||s=='e'||s=='i'||s=='o'||s=='u')return 0;
return 1;
}
int main(){
string s;
int sum=0;
cin>>s;
for(int i=0;i<s.size();i++){
while(pd(s[i])==1){
if(sum>=2){
cout<<" ";
sum=0;
}
cout<<s[i];
i++;
sum++;
}
cout<<s[i];
sum=0;
}
return 0;
}