C语言合法标识符
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 60188 Accepted Submission(s): 23837Problem Description输入一个字符串,判断其是否是C的合法标识符。Input输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。Output对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。Sample Input3 12ajf fi8x_a ff ai_2Sample Outputno yes no
//这题太累了,不想做了,想吐了,全部都是字符串,我要睡觉呜呜呜
//我想的方法和这个人做的类似,所以,等下再把自己没搞好的发在下面
#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){ int i,n,flag; char a[51]; while (scanf("%d",&n)!=EOF) { getchar(); while (n--) { gets(a); if ((a[0]>='a'&&a[0]<='z')||(a[0]>='A'&&a[0]<='Z')||(a[0]=='_')) { for (i=0,flag=0;i<strlen(a);i++) { if (((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z')||(a[i]=='_')||(a[i]>='0'&&a[i]<='9'))) { flag++;//总之立一个flag,再用strlen()函数测试下有没有到结束,也是开关函数的作用 if (flag==strlen(a)) printf("yes\n"); } else { printf("no\n"); break; } } } else printf("no\n"); } } return 0;}
#include<stdio.h>
#include<string.h>
int main(){
int n,i;
char str[100];
while(EOF!=scanf("%d",&n))
{
getchar();
while(n--)
{
i=0;
gets(str);
if(str[0]>47&&str[0]<58)
{
printf("no\n");
break;
}
while(str[i]!='\0')
{
for(i=0;i<n;i++)
{
if(str[i]=' ')
{
printf("no\n");
break;
}
if(str[i]>='0'&&str[i]<='9'||str[i]>='a'&&str[i]<='b'||str[i]>='A'&&str[i]<='B'||str[i]=='_')
continue;
}
}
printf("yes\n");
}
}
return 0;
}
杭电 2024 C语言合法标识符
最新推荐文章于 2019-03-24 16:41:05 发布