首页 > 留学资讯

杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC

发布时间:2024-07-07 10:07:27 | 金泉留学网

金泉留学网小编给大家带来了杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC相关文章,一起来看一下吧。

本文目录一览:

杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC

杭电ACM2024题求解

大概看了下,我觉得你得算法可以改进下
不用双重循环,一重就够了
循环。。。
如果
是下标为0 则判断是否为英文字母或下划线
如果
不是下标为0 ,则判断是否为英文字母或下划线或数字

(其中当不符合规范条件时break退出)
最后通过判断是否中途退出,选择输出yes还是no(判断语句是if( i>=sizeof(s)))

杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC

杭电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;
}

杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC

杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC

金泉留学网(https://www.jqliuxue.com)小编还为大家带来杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC的相关内容。

#include<stdio.h>

#include<string.h>

int main(){

 freopen("x.in","r",stdin);

 int n,i,j,len;

 char a[200]; 

 scanf("%d",&n);getchar();//因为gets()函数似乎是可以直接读掉字符串末尾那个回车的,所以只有最开始的空格要读掉 

 for(i=0;i<n;i++){

  gets(a);

  len=strlen(a);   

  if( ('a'<=a[0] && a[0]<='z') || ('A'<=a[0] && a[0]<='Z') || (a[0]=='_')){ 

   for(j=1;j<len;j++){ //变量名啊大哥...这里改成j就可以 A了 

    if (('0'<=a[j] && a[j]<='9') || ('a'<=a[j] && a[j]<='z') || ('A'<=a[j] && a[j]<='Z') || (a[j]=='_'))  continue;

    else  break; 

   }

   if(j==len) printf("yes\n");

   else printf("no\n");

  }

  else

   printf("no\n");

 }

}

14444484
2015-08-10 19:32:03
Accepted
2024
15MS
1420K
505 B
G++ 金泉留学网

AC记录,那个freopen是我本地用的,交的时候删掉就行了

以上就是金泉留学网小编给大家带来的杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC,希望能对大家有所帮助。更多相关文章关注金泉留学网:www.jqliuxue.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
与“杭电2024,C的合法标识符,求大神看看我哪里错了,为什么不能AC”相关推荐
热点推荐