需要好好审题的题目——全字母句

本文介绍了一种用于判断字符串是否为全字母句的算法,全字母句即包含英语字母表中所有26个字母的句子。算法通过使用标记数组记录每个字母出现次数,检查是否所有字母都至少出现一次。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

全字母句
Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description

全字母句 (pangram) 指包含字母表中全部 26 种英文字母(不区分大小写)的句子,其常被用于展示英文字体的显示效果。

现在,bLue 得到了很多句子,他想知道哪些句子是全字母句。
Input

输入数据有多组(数据组数不超过 100),到 EOF 结束。

每组数据包含一行长度不超过 100 的字符串。
Output

对于每组数据,输出一行。

如果是全字母句则输出 “Yes”,否则输出 “No”(不包括引号)。
Sample Input

The quick brown fox jumps over the lazy dog.
The 6th ACM Funny Programming For/While Contest

Sample Output

Yes
No

#include<stdio.h>
#include<string.h>
#include<iostream>
#include <stdlib.h>
using namespace std;

int main()
{
char a[1009];
int i,len1;
while(gets(a))
{
int c[150]={0};//初始化标记数组
len1=strlen(a);
for(i=0;i<=len1;i++)
{
if(a[i]>='a'&&a[i]<='z')
{
a[i]=a[i]-32;
}
if(a[i]>='A'&&a[i]<='Z')
{
c[a[i]]++;
}
}
int flag=0;
for(i=65;i<=90;i++)
{
if(c[(char)i]==0)//把i转化为char类型
{
flag=1;
break;
}
}
if(flag==0)
printf("Yes\n");
else
printf("No\n");
}
return 0;
}


//主要是这个全字母要求的是所有字母都要有,所以创建一个计数数组来记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值