题目描述
给一个字符串,请判断字符串是否出现了所有的英文字母(不区分大小写)。
输入
每行一个只含英文字母的字符串,长度不超过1000。
输出
每行输出一个样例的结果,如果出现了所有的字符串,输出“Yes”,否则输出“No”。(不需要输出引号)
样例输入
ProgrammingPratice TheQuickBrownFoxJumpsOverLazyDog
样例输出
No Yes
提示
巨大的输入量,请使用C风格的输入
对于这道题,我的思路是:
首先定义i=0,从字母A或a开始,在字符串中寻找A或a,当找到一个A或a的时候,i加一,
跳出循环,一直到Z或z,若i为26则为Yes,否则为No。
#include <stdio.h>
#include<string.h>
int main()
{
char A = 'A',a = 'a',str[1001];
while(scanf("%s",str)!=EOF)//防止超出输出限制
{
A = 'A',a = 'a';
int i = 0,length = strlen(str),j,k;
for(j = 0;j <= 25;j++)
{
for(k = 0;k < length;k++)
{
if(a == str[k]||A == str[k])
{
i++;
break;
}
}
a++;
A++;
}
if(i == 26)printf("Yes\n");
else printf("No\n");
}
return 0;
}