精华内容
下载资源
问答
  • 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 Output 对于每...
  • 判断c语言合法标识符

    千次阅读 2020-01-10 10:54:39
    思路:利用一个字符串来存储待判定的标识符,然后,判断第一个字符是否合法和第二到最终的字符是否合法。 代码: **import java.util.Scanner; public class Main1 { public static void main(String[] args) { ...

    思路:利用一个字符串来存储待判定的标识符,然后,判断第一个字符是否合法和第二到最终的字符是否合法。
    代码:

    **import java.util.Scanner;
    public class Main1 {
    	public static void main(String[] args) {
    		Scanner reader=new Scanner(System.in);
    		int num=reader.nextInt();
    		String b=reader.nextLine();//用来接收输入int之后的回车的
    		for(int k=0;k<num;++k)
    		{
    			int count=0;
    			String a=reader.nextLine();
    			char c;
    			c=a.charAt(0);
    			if(c=='_'||(c>='a'&& c<='z')||(c>='A'&&c<='Z')) {}
    			else
    				{
    				++count;
    				}
    			for(int i=1;i<a.length();++i)
    			{
    				c=a.charAt(i);
    				if(c=='_'||(c>='a' && c<='z')||(c>='A' && c<='Z')||(c>='0'&&c<='9'))
    				{}
    				else
    					{
    					++count;
    					}
    			}
    			if(count>0)
    				System.out.println("no");
    			else
    				System.out.println("yes");
    		}
    	}
    }
    **
    
    展开全文
  • C语言合法标识符

    千次阅读 2019-07-02 15:54:42
    C语言合法标识符 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 Output 对于...

    C语言合法标识符

    输入一个字符串,判断其是否是C的合法标识符。

    Input

    输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。

    Output

    对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。

    Sample Input

    3
    12ajf
    fi8x_a
    ff  ai_2
    

    Sample Output

    no
    yes
    no
    

    C++编写:

    由于先前自认为是对的,结果提交了很多次都是Wrong Answer,就感觉这个题可能要考虑关键字,就去网上搞了个别人没有考虑关键字的代码进去测试然而过了,然后又费力写了半天,其中还出了些让人头皮发麻的问题,终于搞出来了,代码如下:

    /*合法标识符:
      所有标识符必须由字母或下划线开头
      标识符不能是关键字(此处不考虑)
     */
    #include <iostream>
    #include <string>
    using namespace std;
    int main()
    {
        int n;
        cin>>n;
        cin.ignore();      //这个必须写,就是这玩意儿让人头皮发麻
        while(n--)
        {
            string a;
            getline(cin,a);
            int i;
            if(!(a[0]=='_' || (a[0]>='a' && a[0]<='z') || (a[0]>='A' && a[0] <= 'Z')))
            {
                cout<<"no"<<endl;
            }
            else
            {
                for(i=1;i<a.size();i++)
                {
                    if(!(a[i]=='_' || (a[i]>='a' && a[i]<='z') || (a[i]>='A' && a[i] <= 'Z')||(a[i]>='0'&& a[i]<='9')))
                    {
                        cout<<"no"<<endl;
                        break;
                    }
                }
                if(i == a.size())
                    cout<<"yes"<<endl;
            }
        }
    }
    

    当然代码注释出来了那一行,一直觉得自己真的没错了,就是Wrong Answer,真是能把人搞死。幸亏在网上看到了关于这样一个解说,加上去就直接Accept了。别人写的这篇文章也是关于这个题的,考虑了标识符是关键字的情况,大家可以了解一下,网址如下:
    杭电acm 2024 C语言合法标识符

    个人觉得当然当时去找来测试该题是否需要考虑关键字的情况的那个解题方法也很好,是调用库函数来完成的,也很有必要了解一下,此处就不窃取人家的代码发到自己的文章上了,提供一下他的网站:
    HDU-2024 C语言合法标识符

    展开全文
  • C语言合法标识符(含知识点)

    千次阅读 2020-12-18 22:13:53
    输入一个字符串,判断其是否是C的合法标识符。 输入 输入一个长度不超过50的字符串。 输出 如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。 样例输入 8fixafghgjhjhjyuyuyyuyuyu 样例输出 no AC: ...

    C语言标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线()组成的字符串,并且其第一个字符必须是字母或下划线。

    题目描述
    输入一个字符串,判断其是否是C的合法标识符。

    输入
    输入一个长度不超过50的字符串。

    输出
    如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。

    样例输入

    8fixafghgjhjhjyuyuyyuyuyu
    

    样例输出

    no
    

    AC:

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    int main()
    {
        int flag=0,len;
        char ch[60];
        gets(ch);/*不能使用scanf("%s",ch);会忽略掉空格。
        自己在写这道题时就犯了这个错误*/
        len=strlen(ch);
        getchar();//必不可少,接受回车。
        if(ch[0]=='_'||ch[0]>='A'&&ch[0]<='Z'||ch[0]>='a'&&ch[0]<='z')
        {
            for(int i=1;i<len;i++)
            {
                if(ch[i]=='_'||ch[i]>='A'&&ch[i]<='Z'||ch[i]>='a'&&ch[i]<='z'||ch[i]>='0'&&ch[i]<='9')
                {
                    continue;
                }
                else
                {
                    flag=1;break;
                }
            }
            if(flag==0)puts("yes");
            else puts("no");
        }
        else puts("no");
        return 0;
    }
    
    

    初学C语言希望和大家共同进步,欢迎大佬指导。~~~~

    展开全文
  • C语言合法标志符:标识符只能由字母(A-Z, a-z)、数字(0~9)和下划线(_)组成,并且第一个字符必须是字母或下划线,不能是数字。同时C语言标志符不能为有特殊含义的关键字。 以下是合法的标识符: abc, xyz, x3, ...

    #2024
    首先应该对c语言的合法标志符有一定的认识。
    C语言合法标志符:标识符只能由字母(A-Z, a-z)、数字(0~9)和下划线(_)组成,并且第一个字符必须是字母或下划线,不能是数字。同时C语言标志符不能为有特殊含义的关键字。

    以下是合法的标识符:
    abc, xyz, x3, BOOK_1, sum5

    以下是非法的标识符:
    3s 不能以数字开头
    sT 出现非法字符
    -3x 不能以减号(-)开头
    bowy -1 出现非法字符减号(-),出现非法字符空格

    在本题中没有对关键字的标识符给出明确的界定,也就是关键字在可接受范围内。但是c语言的关键字这里也补充一下吧,以免自己之后忘记了。
    数据类型
    1、char:字符类型,1个字节,8位
    2、int:整数类型,4个字节,32位
    3、float:浮点数类型,4个字节,32位,保留8位有效数字
    4、double:双精度类型,8个字节,64位,保留16位有效数字
    5、short:短整数类型,2个字节,16位
    6、long:长整数类型,8个字节,64位
    7、signed:有符号类型
    8、unsigned:无符号类型
    9、enum:枚举类型
    10、union:共同体类型,使几个不同类型的变量共占一段内存(相互覆盖)
    11、struct:结构体类型,把不同类型的数据组合成一个整体-------自定义数据
    12、void:声明函数无返回值或无参数
    控制类型
    13、for:循环语句
    14、do:循环语句
    15、while:循环语句
    16、break:跳出当前循环
    17、continue:跳出当前循环,开始下一次的循环
    18、if:条件语句
    19、else:分支语句
    20、goto:无条件跳转语句,少用
    21、switch:分支语句
    22、case:和switch组合使用
    23、default:其他分支
    24、return:子程序返回语句
    存储类型
    25、auto:声明自动变量,很少用到
    26、extern:声明变量是在其他文件中声明,引用变量
    27、register:声明寄存器变量
    28、static:静态变量
    其他类型
    29、const:声明只读变量
    30、sizeof:计算数据类型长度
    31、typedef:给数据类型取名
    32、volatile:变量在程序执行中可以被隐含地改变

    回到题目,注意需要对第一次读取测试用例个数之后读取换行符,不然会读取出错。这里使用了isaplha()可以判断开头是否为字母,以及isalnum()函数判断是否为字母或者数字,需要在头部文件中导入ctype.h头文件

    题目直达
    http://acm.hdu.edu.cn/showproblem.php?pid=2024

    AC代码

    #include <iostream>
    #include <cstdio>
    #include <cmath>
    #include <cstring>
    #include <ctype.h> //快速检验类型的头文件 
    using namespace std;
    int main() {
    	int c;
    	cin>>c;
    	getchar();
    	while(c--) {	
    		char str[51];
    		gets(str);
    		int len=strlen(str);
    		int flag=0;
    		if(!isalpha(str[0]) && str[0]!='_') {
    			flag++;
    		}
    		for(int i=1; i<len; i++) {
    			if(!isalnum(str[i]) && str[i]!='_') {
    				flag++;
    			}
    		}
    		if(flag==0) {
    			cout<<"yes"<<endl;
    		} else {
    			cout<<"no"<<endl;
    		}
    	}
    	return 0;
    }
    
    展开全文
  • 1138: C语言合法标识符 时间限制: 1 Sec 内存限制: 128 MB 提交: 9811 解决: 4455 [状态] [讨论版] [提交] [命题人:admin] 题目描述 输入一个字符串,判断其是否是C的合法标识符。C语言中规定标识符只能由字母、数字...
  • C语言合法标识符,合法常量,合法转义字符总结!

    万次阅读 多人点赞 2020-09-27 13:25:44
    一, 合法标识符 用户定义的合法标识符需满足以下两个要求: 标识符只能由字母,数字和下划线组成。 标识符不能以数字开头。 二, 合法常量 整型常量: 十进制 :10 八进制 :017(以0开头,不能出现8,9) 十六...
  • 输入一个字符串,判断其是否是C的合法标识符C语言中规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线。 输入 输入一个长度不超过50的字符串。 输出 如果输入数据是C的合法标识符,...
  • C语言合法标识符 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行...
  • 输入一个字符串,判断其是否是C的合法标识符。 输入 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 输出 对于每组输入数据,...
  • 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 Output 对于...
  • 输入一个字符串,判断其是否是C的合法标识符。 输入格式: 数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 输出格式: 对于每组输入...
  • (HDU2024 C++) C语言合法标识符

    千次阅读 2018-09-04 13:42:31
    C语言合法标识符 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 90826 Accepted Submission(s): 34917 Problem Description 输入一个字符串,...
  • 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 Output 对于每组输入数据,...
  • C语言合法标识符Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 84677 Accepted Submission(s): 32637Problem Description输入一个字符串,判断其是否是...
  • 判断合法标识符c语言或c++)

    千次阅读 2020-11-22 11:57:13
    判断合法标识符(10 分) 编写一个判断合法标识符的程序。要求输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算: 输入一个以回车结束的字符串(少于80个字符),判断其是否符合c++规定的标识符...
  • 1138: C语言合法标识符

    万次阅读 2017-11-24 17:15:37
    1138: C语言合法标识符 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 2902 Solved: 1251 SubmitStatusWeb Board Description 输入一个字符串,判断其是否是C的合法标识符。 Input 输入一...
  • c语言合法标识符

    千次阅读 2018-01-26 08:27:58
    c语言合法标识符 题目来源: http://acm.zzuli.edu.cn/problem.php?id=1138 题目描述: 输入一个字符串,判断其是否是C的合法标识符。 输入 输入一个长度不超过50的字符串。 输出 如果输入数据是C的合法...
  • 输入一个字符串,判断其是否是C的合法标识符C语言中规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线。 输入 输入一个长度不超过50的字符串。 输出 如果输入数据是C的合法...
  • 0008:判断是否为C语言合法标识符

    千次阅读 2018-10-22 17:41:32
    C语言中的合法标识符的定义为:以下划线或字母开头的字母数字串(含下划线)。 完成一个程序实现对输入的n个字符串进行判定,是否为C语言合法标识符。如果是则输出1,不是则输出0 输入 输入的第一行为一个数字,...
  • 合法标识符 用户定义的合法标识符需满足以下两个要求: 标识符只能由字母,数字和下划线组成。 标识符不能以数字开头。 答案是B 讲解:A未使用下划线 C使用了! D使用了C语言系统中存在的函数名 补: const修饰的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,116
精华内容 2,846
关键字:

c语言合法标识符判断

c语言 订阅