AC日记——合法C标识符 openjudge 1.7 06

06:合法 C 标识符

总时间限制: 
1000ms

内存限制:
 
65536kB
描述

给定一个不包含空白符的字符串,请判断是否是C语言合法的标识符号(注:题目保证这些字符串一定不是C语言的保留字)。

C语言标识符要求:

1. 非保留字;

2. 只包含字母、数字及下划线(“_”)。

3. 不以数字开头。

输入
一行,包含一个字符串,字符串中不包含任何空白字符,且长度不大于20。
输出
一行,如果它是C语言的合法标识符,则输出yes,否则输出no。
样例输入
RKPEGX9R;TWyYcp
样例输出
no

思路:

  水题使我快乐;

来,上代码:

#include<cstdio>
#include<string>
#include<iostream>
#include<algorithm>

using namespace std;

int len;

string word;

int main()
{
    cin>>word;
    len=word.length();
    if(word[0]<=‘9‘&&word[0]>=‘0‘)
    {
        printf("no\n");
        return 0;
    }
    for(int i=0;i<len;i++)
    {
        if((word[i]<‘0‘||word[i]>‘9‘)&&(word[i]>‘z‘||word[i]<‘a‘)&&(word[i]>‘Z‘||word[i]<‘A‘)&&word[i]!=‘_‘)
        {
            printf("no\n");
            return 0;
        }
    }
    printf("yes\n");
    return 0;
}
时间: 2024-08-09 02:20:33

AC日记——合法C标识符 openjudge 1.7 06的相关文章

AC日记——矩阵交换行 openjudge 1.8 01

01:矩阵交换行 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个5*5的矩阵(数学上,一个r×c的矩阵是一个由r行c列元素排列成的矩形阵列),将第n行和第m行交换,输出交换后的结果. 输入 输入共6行,前5行为矩阵的每一行元素,元素与元素之间以一个空格分开.第6行包含两个整数m.n,以一个空格分开.(1 <= m,n <= 5) 输出 输出交换之后的矩阵,矩阵的每一行元素占一行,元素之间以一个空格分开. 样例输入 1 2 2 1 2 5 6 7 8 3 9 3 0

AC日记——单词的长度 openjudge 1.7 24

24:单词的长度 总时间限制:  1000ms 内存限制:  65536kB 描述 输入一行单词序列,相邻单词之间由1个或多个空格间隔,请对应地计算各个单词的长度. 注意,如果有标点符号(如连字符,逗号),标点符号算作与之相连的词的一部分.没有被空格间开的符号串,都算作单词. 输入 一行单词序列,最少1个单词,最多300个单词,单词之间用至少1个空格间隔.单词序列总长度不超过1000. 输出 依次输出对应单词的长度,之间以逗号间隔. 样例输入 She was born in 1990-01-02

AC日记——验证字串 openjudge 1.7 18

18:验证子串 总时间限制:  1000ms 内存限制:   65536kB 描述 输入两个字符串,验证其中一个串是否为另一个串的子串. 输入 输入两个字符串, 每个字符串占一行,长度不超过200且不含空格. 输出 若第一个串s1是第二个串s2的子串,则输出(s1) is substring of (s2) 否则,若第二个串s2是第一个串s1的子串,输出(s2) is substring of (s1) 否则,输出 No substring. 样例输入 abc dddncabca 样例输出 ab

AC日记——回文子串 openjudge 1.7 34

34:回文子串 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个字符串,输出所有长度至少为2的回文子串. 回文子串即从左往右输出和从右往左输出结果是一样的字符串,比如:abba,cccdeedccc都是回文字符串. 输入 一个字符串,由字母或数字组成.长度500以内. 输出 输出所有的回文子串,每个子串一行.子串长度小的优先输出,若长度相等,则出现位置靠左的优先输出. 样例输入 123321125775165561 样例输出 33 11 77 55 2332 2112

AC日记——删除单词后缀 openjudge 1.7 20

20:删除单词后缀 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个单词,如果该单词以er.ly或者ing后缀结尾, 则删除该后缀(题目保证删除后缀后的单词长度不为0), 否则不进行任何操作. 输入 输入一行,包含一个单词(单词中间没有空格,每个单词最大长度为32). 输出 输出按照题目要求处理后的单词. 样例输入 referer 样例输出 refer 来源 北京大学医学部计算概论08期末考试题 思路: 得了吧,水题一个: 来,上代码: #include<cstdio>

AC日记——字符串判等 openjudge 1.7 17

17:字符串判等 总时间限制:  1000ms 内存限制:   65536kB 描述 判断两个由大小写字母和空格组成的字符串在忽略大小写,且忽略空格后是否相等. 输入 两行,每行包含一个字符串. 输出 若两个字符串相等,输出YES,否则输出NO. 样例输入 a A bb BB ccc CCC Aa BBbb CCCccc 样例输出 YES 思路: 大模拟: 来,上代码: #include<cstdio> #include<string> #include<cstring>

Ac日记——大整数减法 openjudge 1.6 11

11:大整数减法 总时间限制:  1000ms 内存限制:  65536kB 描述 求两个大的正整数相减的差. 输入 共2行,第1行是被减数a,第2行是减数b(a > b).每个大整数不超过200位,不会有多余的前导零. 输出 一行,即所求的差. 样例输入 9999999999999999999999999999999999999 9999999999999 样例输出 9999999999999999999999990000000000000 思路: 模拟: 来,上代码: #include<s

AC日记——大整数加法 openjudge 1.6 10

10:大整数加法 总时间限制:  1000ms 内存限制:  65536kB 描述 求两个不超过200位的非负整数的和. 输入 有两行,每行是一个不超过200位的非负整数,可能有多余的前导0. 输出 一行,即相加后的结果.结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342. 样例输入 22222222222222222222 33333333333333333333 样例输出 55555555555555555555 来源 程序设计实习2007 思路: 模拟: 来,上代码:

AC日记——逆波兰表达式 openjudge 3.3 1696

1696:逆波兰表达式 总时间限制:  1000ms 内存限制:  65536kB 描述 逆波兰表达式是一种把运算符前置的算术表达式,例如普通的表达式2 + 3的逆波兰表示法为+ 2 3.逆波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算次序,例如(2 + 3) * 4的逆波兰表示法为* + 2 3 4.本题求解逆波兰表达式的值,其中运算符包括+ - * /四个. 输入 输入为一行,其中运算符和运算数之间都用空格分隔,运算数是浮点数. 输出 输出为一行,表达式的值.可直接用pr