HDOJ 2024 C语言合法标识符(水)
2015-08-07 11:03
411 查看
C语言合法标识符
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 46619 Accepted Submission(s): 18771
[align=left]Problem Description[/align]
输入一个字符串,判断其是否是C的合法标识符。
[align=left]Input[/align]
输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。
[align=left]Output[/align]
对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。
[align=left]Sample Input[/align]
3 12ajf fi8x_a ff ai_2
[align=left]Sample Output[/align]
no yes no
[align=left]Author[/align]
lcy
[align=left]Source[/align]
C语言程序设计练习(四)
[align=left]Recommend[/align]
lcy | We have carefully selected several similar problems for you: 2025 2022 2020 2016 2026
注意事项:
1、首字符是字母或下划线,只能
2、其余字符为字母或下划线或数字,只能
3.不能输入一串连续字符串,会被中间的空格截断,只能一个一个数,到回车键为止。
4.判断错误后,还不能 break; 或者是 continue; ,因为要输入完一行字符!!!!!否则剩下的就算到下一行字符里去了!!!
0MS AC:先判断首字符,剩下的字符写个循环
#include<stdio.h> int main(){ int n,i,flag; char str; scanf("%d\n",&n); while(n--){ scanf("%c",&str); flag=1; if(!(str=='_'||(str>='a'&&str<='z')||(str>='A'&&str<='Z'))) flag=0; while(scanf("%c",&str)&&str!='\n') if(!(str=='_'||(str>='a'&&str<='z')||(str>='A'&&str<='Z')||(str>='0'&&str<='9'))) flag=0; if(flag) printf("yes\n"); else printf("no\n"); } return 0; }
相关文章推荐
- C++ Vector
- C++ AMP 介绍(两)
- c++ STL中的set容器
- C++模板元编程
- c++子类和父类成员函数重名
- c语言》排序法
- #编码风格#C++ Programming Style Guidelines
- VC++开发中遇到的一些问题整理
- 怎样从一个DLL中导出一个C++类
- C++格式化输出
- C/C++ vector详解
- 浅析C++标准库元组(tuple)源码
- (C/C++学习笔记)Copy构造函数应用场景
- C++ 头文件重复包含
- C/C++获取当前系统时间
- C语言基础、技巧_自总结版
- C++ Hello World
- C语言的关系运算符
- 链表排序(C语言)选择排序
- C++ Primer Plus第六版 第九章 编程练习答案