欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 创投人物 > BC35 判断字母

BC35 判断字母

2025/5/6 15:11:17 来源:https://blog.csdn.net/vjkbbo/article/details/147720991  浏览:    关键词:BC35 判断字母

题目:BC35 判断字母

描述
从键盘任意输入一个字符,编程判断是否是字母(包括大小写)。
输入描述:
输入包括一个字符。
输出描述:
输出该字符是字母(YES)或不是(NO)。

示例1
输入:H
输出:YES

示例2
输入:9
输出:NO

代码:

#include<stdio.h>
int main() {int ch = 0;while ((ch = getchar()) != EOF) {if ((ch >= 'a') && (ch <= 'z') || (ch >= 'A') && (ch <= 'Z')){printf("YES");}else{printf("NO");}getchar();	//1号位}
}

考点:getchar()函数
getchar()是在输入缓冲区内读取数据,读取的过程如下:

开始键盘还未输入时,输入缓冲区还没有内容,此时表现为光标闪烁等待输入。

输入一个字符(如A)后敲回车,此时缓冲区内的内容为[A \n]。

getchar()第一次拿到[A]并显示在桌面上。

getchar()第二次拿到[\n]

因此这道题在1号位处需要设置一个getchar()函数来吸收[\n],阻止影响结果

补充:scanf()的返回值为实际获取到的数据元素的个数,若获取失败则返回EOF。

scanf默认读到空格结束

方法2:使用库行数isalpha()

该函数是专门用来判断是否为字母的函数,是字母返回非0值,不是则返回0

int main()
{int ch = 0;while((ch=getchar()) != EOF){//使用库函数if(isalpha(ch))printf("YES\n");elseprintf("NO\n");getchar();}     return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词