我编写了代码来检查前两个字母是否相同,它会删除一个并更正单词。但它不工作,有什么问题?
char word[4];
int i;
cout<<"Enter Word:";
for(i=0;i<5;i++) cin>>word[i];
for(int y=0;y<5;y++){
if(word[i]==word[i+1]){
for(int k=y;k<5;k++){
word[i]=word[i+1];
}
for(int g=0;g<5;g++)
cout<<word[i];
}
最佳答案
行:
if(word[i]==word[i+1]){
需要:
if(word[y]==word[y+1]){
事实上,几乎所有对 i
的引用都需要指向适当的循环变量。
此外,大多数文字 5
需要改为 4
。 (您想遍历值 0、1、2 和 3。您不想访问 word[4]
(它不存在)。
最后一行:
for(int y=0;y<5;y++){
应该是:
for(int y=0;y<3;y++){
因为你要访问word[y+1]
关于c++ - 去除重复字母-词更正,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37639509/