#include<stdio.h>
int main()
{
int i,j;
char str[80];
printf("请输入字符串");
gets(str);
for(i=0;str[i]!='\0';i++)
{
if(str[i]>='a'&&str[i]<='z')
{
for(j=i+1;str[j]!='\0';j++)
str[j-1]=str[j];
i--;
}
}
puts(str);
}
题目是删去小写字母,保留数字,为什么我写的这个最后一个数会出现几次
修改如下,供参考:
#include<stdio.h>
int main()
{
int i,j;
char str[80];
printf("请输入字符串");
gets(str);
for(i=0;str[i]!='\0';) //修改 i++
{
if(str[i]>='a'&&str[i]<='z')
{
for(j=i+1;str[j]!='\0';j++)
str[j-1]=str[j];
str[j-1] = '\0';//i--; //修改
}else //修改
i++; //修改
}
puts(str);
return 0;
}