输入一个字符串,将组成字符串的所有非英文字母的字符删掉后输出。程序有错误

2024-11-08 14:09:15
推荐回答(2个)
回答1:

我的理解是,这个代码和a的初始化情况有关,当a如果不是初始化为全0的话,就可能出错。
可考虑调整为
#include
#include
int
main()
{
int
i;
char
a[80];
gets(a);
for(i=0;i{
if(a[i]>='a'&&a[i]<='z'||a[i]>='a'&&a[i]<='z')
printf("%c",a[i]);
}
return
0;
}

回答2:

#include
#include
#include
void main()
{
char str[256];
int i,k=0,n;
gets (str);
n=strlen(str);
for(i=0;i if (tolower(str[i])>='a' && tolower(str[i])<='z')
{
str[k]=str[i];k++;
}
str[k]='\0';
printf("%s\n",str);
}