最近经常有小伙伴私信询问杭电2024 杭电ACM2024题求解相关的问题,今天,金泉留学网小编整理了以下内容,希望可以对大家有所帮助。
本文目录一览:

杭电2024
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 52
int main()
{
char arr[N];
int a,b,c,d;
while(scanf("%d",&a)!=EOF)
{
getchar(); // 在这里getchar就对了
while(a--)
{
// getchar(); 不要在这里getchar
gets(arr);
b=strlen(arr);
d=0;
for(c=0;c<b;c++)
if(c==0)
{
if((arr[c]>=65&&arr[c]<=90)||(arr[c]>=97&&arr[c]<=122)||(arr[c]==95))
{
d=1;
continue;
}
else
{
break;
}
}
else if(c!=0)
{
if((arr[c]>=65&&arr[c]<=90)||(arr[c]>=97&&arr[c]<=122)||(arr[c]==95)||(arr[c]>=48&&arr[c]<=57))
{
continue;
}
else
{
d=0;
break;
}
}
if(d)
printf("yes\n");
else
printf("no\n");
}
}
return 0;
}

杭电ACM2024题求解
大概看了下,我觉得你得算法可以改进下
不用双重循环,一重就够了
循环。。。
如果
是下标为0 则判断是否为英文字母或下划线
如果
不是下标为0 ,则判断是否为英文字母或下划线或数字
(其中当不符合规范条件时break退出)
最后通过判断是否中途退出,选择输出yes还是no(判断语句是if( i>=sizeof(s)))

杭电acm2024
金泉留学网(https://www.jqliuxue.com)小编还为大家带来杭电acm2024的相关内容。
#include <iostream>
using namespace std;
bool ischar(char ch)
{
return ch>='a'&&ch<='z' || ch>='A'&&ch<='Z';
}
bool isnum(char ch)
{
return ch>='0'&&ch<='9';
}
bool judge(char *a)
{
if(a[0]!='_'&&!ischar(a[0])) return false;
for(int i=1; a[i]; ++i)
if(a[i]!='_'&&!ischar(a[i])&&!isnum(a[i])) return false;
return true;
}
int main()
{
char a[100];
int text, i, j;
cin>>text;
getchar();
for(i=1; i<=text; ++i)
{
cin.getline(a, 100);
if(judge(a)) cout<<"yes\n";
else cout<<"no\n";
}
return 0;
}
金泉留学网以上就是金泉留学网小编整理的内容,想要了解更多相关资讯内容敬请关注金泉留学网。更多相关文章关注金泉留学网:
www.jqliuxue.com免责声明:文章内容来自网络,如有侵权请及时联系删除。