C语言编写程序,输入一个字符串,将其中的英文字母放入a数组。例如,输入的字符串为"a2b**D"那么形成的a数组应为"abD".
我是这么写的。
#include<stdio.h>
int main(void)
{
char a[10],b[10];
int i=-1,j=0,k;
do
{
i++;
scanf("%c",&a[i]);
if('A'<=a[i]<='Z'||'a'<=a[i]<='z')
{
b[j]=a[i];
j++;
}
}while(a[i]!='\n');
for(k=0;k<j+1;k++)
printf("%c",b[k]);
return 0;
}
#include <stdio.h>
int main(void)
{
char a[10]={0,0,0,0,0,0,0,0,0,0},b[10]={0,0,0,0,0,0,0,0,0,0},c=0;
int i=-1,j=0,k=0;
do
{
i++;
scanf("%c",&a[i]);
c=a[i];
if((c>='A')&&(c<='Z')||(c>='a')&&(c<='z'))
{
b[j]=a[i];
j++;
}
}
while(a[i]!='\n');
for(k=0;k<j;k++)
printf("%c",b[k]);
return 0;
}
int main(void)
{
char a[10]={0,0,0,0,0,0,0,0,0,0},b[10]={0,0,0,0,0,0,0,0,0,0},c=0;
int i=-1,j=0,k=0;
do
{
i++;
scanf("%c",&a[i]);
c=a[i];
if((c>='A')&&(c<='Z')||(c>='a')&&(c<='z'))
{
b[j]=a[i];
j++;
}
}
while(a[i]!='\n');
for(k=0;k<j;k++)
printf("%c",b[k]);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2017-04-25
if('A'<=a[i]<='Z'||'a'<=a[i]<='z')错了,不能这样写
改为if(a[i]>='A'&&a[i]<='Z'||a[i]>='a'&&a[i]<='z')
改为if(a[i]>='A'&&a[i]<='Z'||a[i]>='a'&&a[i]<='z')