如何显示英文字母

来源:百度知道 编辑:UC知道 时间:2024/05/27 05:34:20
接收用户输入的一行字符,并显示其中的英文字母.
就比如说"12345abcde",最后的结果是只显示"abcde"
可是我写了代码以后,最后的结果是显示的英文字母的个数.也不知代码错在哪里了.请帮我看一下,
#include<stdio.h>
void main()
{
char ch;

int i=0;
printf("\n请输入一行字符");
ch=getchar();
while((ch=getchar())!='\n')

if(ch>='A' && ch<='Z' || ch>='a' && ch<='z')
i++;
printf("%c的字母为%d\n",ch,i);

//你这里定义的ch是一个字符变量,只能存储你输入的一个字符,你输入的下一个字符就把前面输入的一个字符覆盖了.
//if(ch>='A' && ch<='Z' || ch>='a' && ch<='z')
//i++;
//上面这两句是当输入的是字母时就i增加1,所以最后输出的ch是你最后输入的一个字符'\n',输出的i就是字母的个数.
//你应该输入一个字符串,程序如下:

#include<stdio.h>
void main()
{
char ch[100];

int i=0;
printf("\n请输入一行字符");
gets(ch);
printf("%s的字母为",ch);
while(ch[i]) {
if((ch[i]>='A' && ch[i]<='Z') || (ch[i]>='a' && ch[i]<='z'))
printf("%c", ch[i]);
i++;
}
printf("\n");
}

#include<stdio.h>

void main()
{
char inputBuffer[ 1024 ] = { 0 };
int writeLen = 0;
char ch;
while( ( ch = getchar() ) != '\n' )
{
if( ( ch >= 'a' && ch <= 'z' ) || ( ch >= 'A' && c