HDU 2024 C语言合法标识符(水~)
2015-09-07 08:36
393 查看
Description
输入一个字符串,判断其是否是C的合法标识符
Input
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串
Output
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出”yes”,否则,输出“no”
Sample Input
3
12ajf
fi8x_a
ff ai_2
Sample Output
no
yes
no
Solution
水题,主要考察C语言基础知识,合法标识符只由大小写字母,数字以及下划线组成,且其首字符必须是大小写字母或者下划线
Code
输入一个字符串,判断其是否是C的合法标识符
Input
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串
Output
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出”yes”,否则,输出“no”
Sample Input
3
12ajf
fi8x_a
ff ai_2
Sample Output
no
yes
no
Solution
水题,主要考察C语言基础知识,合法标识符只由大小写字母,数字以及下划线组成,且其首字符必须是大小写字母或者下划线
Code
#include<cstdio> #include<cstring> #include<iostream> using namespace std; int main() { int t; scanf("%d",&t); getchar(); while(t--) { char s[111]; gets(s); int flag=1; if(!(s[0]=='_'||s[0]>='a'&&s[0]<='z'||s[0]>='A'&&s[0]<='Z')) flag=0; int len=strlen(s); for(int i=0;i<len;i++) if(!(s[i]>='0'&&s[i]<='9'||s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z'||s[i]=='_')) flag=0; if(flag) printf("yes\n"); else printf("no\n"); } return 0; }
相关文章推荐
- C++相对于C的两种新的内置类型
- C++ Primer : 第十四章 : 重载运算与类型转换之重载运算符
- 队列的链式实现(C语言)
- C&C++输入方法总结
- 浅谈C++中的单例模式
- C语言 常量
- C++ template overload
- C语言数据类型总结
- C++ 类型转换笔记
- C++学习笔记【转载】
- C++ 重载操作符之一(指针运算符*,->)
- C语言内存分配情况详解
- C/C++基础知识:typedef用法小结
- 快速判断一个数能否被1、2、3、4、5、6、7、8、9、10、11、12、13、17、19、23等整除的规律总结
- C++ 多态,虚函数
- 项目4.3 摄氏温度转华氏温度
- [转]C#调用C++类(以COM组件的形式)
- C语言变长数组data[0]【总结】
- stl容器中的元素删除方法
- 项目4.2 计算两个并联电阻的值