判断字符是否为字母,数字 HDU - 2024

麒麟V10 SP3国产化环境部署MySQL 8.0全流程实战 本文详细介绍了在国产化操作系统麒麟V10 SP3上部署MySQL 8.0的全流程实战指南。从环境准备、冲突排查到安装包处理、服务配置与安全加固,提供了详细的命令和技巧,帮助用户顺利完成MySQL 8.0的部署与优化,适用于国产化环境下的数据库应用。 阅读详情

同学问了我一道hdu的水题 

题号是2024 原题地址戳这里

C语言合法标识符

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 86924    Accepted Submission(s): 33443


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

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

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

Sample Input

  
312ajffi8x_aff ai_2
 

Sample Output

  
noyesno
 
看到这题 最开始的想法就是 读入字符 然后判断是否在 a~z A~Z 1~9之间

标识符由字母、下划线、数字这三个方面组成,但开头必须是字母或下划线。

上代码(最普通的做法)ps:放了同学的代码 她的错误是少写了等号......已改正

#include<iostream>
#include<stdio.h>
#include<string>
using namespace std;
int main()
{
    int n,flag;
    string a[10000];
    while(~scanf("%d\n",&n))
    {
        for(int i=0; i<n; i++)
            getline(cin,a[i]);
        for(int i=0; i<n; i++)
        {
            flag=0;
            if(a[i][0]=='_'||(a[i][0]>='a'&&a[i][0]<='z')||(a[i][0]>='A'&&a[i][0]<='Z'))
            {
                for(int j=1; j<a[i].length(); j++)
                {
                    if(a[i][j]=='_'||(a[i][j]>='a'&&a[i][j]<='z')||(a[i][j]>='A'&&a[i][j]<='Z')||(a[i][j]>='0'&&a[i][j]<='9'))
                        flag++;
                    else break;
                }
                if(flag==a[i].length()-1) cout<<"yes"<<endl;
                else cout<<"no"<<endl;
            }
            else cout<<"no"<<endl;
        }
    }
    return 0;
}

之后在 讨论区看到了有关用 标准函数 的做法

需要用到 头文件 #include <ctype.h>

先说 判断字母的函数   isalpha(  )

#include<iostream>
#include<stdio.h>
#include<ctype.h>
using namespace std;
int main()
{
    int n,flag;
    char c;
    scanf("%c",&c);
    int a=isalpha(c);//若 c 为字母,返回非零值;否则,返回0。
    printf("%d\n",a);//返回非零值为随机值 与字母大小无关
    return 0;
}

然后是 同时判断字母与数字的函数    isalnum(   )

#include<iostream>
#include<stdio.h>
#include<ctype.h>
using namespace std;
int main()
{
    int n,flag;
    char c;
    scanf("%c",&c);
    int a=isalnum(c);//若 c 为字母或数字,返回非零值;否则,返回0。
    printf("%d\n",a);//返回非零值为随机值 与数字字母大小无关
    return 0;
}

下面放一下用 标准函数 做的代码:

 
#include<iostream>
#include<stdio.h>
#include<string>
#include<ctype.h>
using namespace std;
int main()
{
    int n,flag;
    string str;
    while(~scanf("%d\n",&n))
    {
        getchar();
        for (int i=0; i<n; i++)
        {
            getline(cin,str);
            flag=0;
            if (isalpha(str[0])||str[0]=='_')
            {
                flag=1;
                for (int i=1; str[i]!=0; i++)
                    if (!isalnum(str[i])&&str[i]!='_')
                    {
                        flag=0;
                        break;
                    }
            }
            if (flag)
                printf("yes\n");
            else printf("no\n");
        }
    }
    return 0;
}

先这样吧~
GEOS-Chem笔记——模式下载安装+驱动数据+运行流程 看过我博客的会发现我写了很多CESM的笔记,但是说实话,平时科研我其实更多时候是GEOS-Chemuser。之所以写了很多CESM笔记,其实是因为不会,就边学边写。然后GEOS-Chem已经用比较熟了,所以也没想过做笔记啥的。但是我发现越来越多朋友私信我各种CESM问题,我觉得我可能给大家营造了一种我是CESM达人的错觉。感觉自己有点跑偏了呢。公平起见,我觉得我有必要补充点GEOS-Chem笔记。 GEOS-Chem是研究大气化学的人常用的大气化学传输模式,在全世界范围的大气化学研究组中被广泛使用。不过. 阅读详情

相关推荐

PVT(Process Voltage Temperature)

芯片PVT

网始如芯个人博客 3万+

ZZULIOJ 1138: C语言合法标识符

题目描述 输入一个字符串,判断其是否是C的合法标识符。C语言中规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线。 输入 输入一个长度不超过50的字符串。 输出 如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。 样例输入 Copy 8fixafghgjhjhjyuyuyyuyuyu 样例输出 Copy no #include<stdio.h> #include<string.h> int main(){ char ch[52],fla

m0_51995978的博客 3174

如何打开本地网络的防火墙端口(Windows版)解决ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。问题

ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。 最开始在遇到这个报错的时候十分不解,后来经过思考,有可能是服务器端口占用,或者并没有放行。因此搜查问题的关键是要先去排查问题。 在搜索栏输入控制面板 选择防火墙 选择开关 保证这些选项是开着的 选择高级设置 新建规则 创建协议端口 选择端口 允许连接 点击下一步 创建规则后点击下一步(后命名) 选择任意端口ALL即可 问题排查完毕!socket创建网络通信时,有读者

weixin_46900108的博客 9万+

C语言——判断字符串是否是C的合法标识符

输入一个字符串,判断其是否是C的合法标识符。 输入格式: 数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 输出格式: 对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。 代码: #include<stdio.h> int main(){ int n,i; char a[50]; while(scanf("%d",&n)!=EOF)...

qq_61768843的博客 1万+

ODS 与模态分析

模态分析不是通过现有的 FRF 来“推测”或“估计”其他模态参数,而是通过测量和分析 FRF 来。

轩辕霸天L 1260

Aurora8b10b光口通信实战:复位时序与IP核配置详解

本文深入解析了Aurora 8B10B协议在FPGA高速光口通信中的核心实践,重点剖析了确保链路稳定启动的关键复位时序与IP核配置细节。通过详解全双工与单工模式下的复位流程、Vivado中IP核的物理层与链路层参数设置,并结合用户逻辑设计实例,为工程师实现可靠的高速数据传输提供了清晰的实战指南。

weixin_29280219的博客 177

判断一个字符数据是否是字母字符**

分析: 1、需要判断一个字符是否是字母字符,首先需要提供一个字符数据 2、字符是否为字母字符: 数字字符的范围 a - z 或者 A - Z 之间都属于字母字符,因此提供的字符只要大于或等于a,并且还要下于或等于z 或者 大于或等于A,并且还要下于或等于Z 3、判断完成之后,打印判断的结果。 import java.util.Scanner; public class Test02 { public static void main(String[] args){ //判段一个字

lzj_love_wx的博客 1万+

CarSim - 仿真汽车驾驶行为的完整源代码及描述

以上是多年收集的稀有软件CarSim的源代码和描述,借助CarSim提供的功能,用户可以准确地模拟和研究汽车的驾驶行为,为汽车设计、驾驶辅助系统等领域提供有价值的支持。是一款用于模拟汽车驾驶行为的稀有软件,它经过多年的收集和开发,提供了一套完整的源代码和相应的描述,能够准确地模拟真实世界中的汽车运动和操控。CarSim的源代码采用现代化的。

weixin_50547796的博客 293

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

输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。 #include<stdio.h> #include<string.h>//在使用字符串处理函数时,应当在程序文件的开头加入此头文件 int main(...

weixin_43730203的博客 1万+

YOLO 线性小目标涨点|3890 张输电导线散股 VOC+YOLO 单类别数据集实战,无人机电力缺陷巡检全流程落地

架空输电导线是电网能量传输核心载体,长期受风力摆动、雷击、腐蚀、外力撞击作用,外层铝股极易出现断裂散股故障。导线散股初期仅少量铝丝开裂,肉眼与无人机远距离航拍下属于细长微弱线性小目标;若未及时发现,散股会持续扩张,引发导线过热、断线、大面积停电重大电力安全事故。传统人工巡检存在多重行业痛点:山区、跨江河线路人员无法攀爬登杆,高空作业人身坠落风险极高;无人机单次航拍产出数千张高清图片,人工逐帧筛查微小散股耗时 3-5 天,阴天、逆光、植被遮挡场景漏检率超 45;

lin_xiu的博客 52

YOLOv8有效涨点,增强型 YOLOV8 与多尺度注意力机制特征融合,附代码,详细步骤

在本实验中,我们通过将双层路由注意(BRA)、广义特征金字塔网络(GFPN)和第四检测头结合到YOLOv8中,开发了一种新颖的BGF-YOLO架构。BGF-YOLO 包含注意力机制,可以更多地关注重要特征,特征金字塔网络可以通过将高级语义特征与空间细节合并来丰富特征表示。此外,我们研究了不同的注意力机制和特征融合、检测头架构对检测准确性的影响。实验结果表明,与YOLOv8x相比,BGF-YOLO的mAP50增加了4.7%。

kay_545 3048

C语言合法标识符

C语言合法标识符 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 Output 对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。 Sample Input 3 12ajf fi8x_a ff ai_2 Samp...

Slatter的博客 7644

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

HDU 2024 - C语言合法标识符

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2024 #include #include int main() { int n,i,k,l; char a[50]; scanf("%d",&n); getchar(); while(n--)

棺材深處 1284

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

HDU - 2024 C语言合法标识符

HDU - 2024 C语言合法标识符 HDU - 2024 首先,补充一下新知识,什么叫合法标识符? C语言标识符是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义,标识符由字母(A-Z,a-z)、数字(0-9)、下划线“_”组成,并且首字符不能是数字,但可以是字母或者下划线。例如,正确的标识符:abc,a1,prog_to。 原题如下: 输入一个字符串,判断其...

种花家的奋斗兔的博客 790

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

HDU2024 C语言合法标识符[入门]

/* HDU2024 C语言合法标识符 */ #include &lt;stdio.h&gt; #include &lt;ctype.h&gt; #include&lt;stdlib.h&gt; int main(void) { int n; char s[50+1], *t; gets(s); n = atoi(s);//在stdlib头文件里 ...

李浅唱的博客 358

OpenJ_Bailian - 3659 判断是否为C语言的合法标识符

OJ地址:https://vjudge.net/problem/OpenJ_Bailian-3659 C语言中的合法标识符的定义为:以下划线或字母开头的字母数字串(含下划线)。 完成一个程序实现对输入的n个字符串进行判定,是否为C语言的合法标识符。如果是则输出1,不是则输出0 Input 输入的第一行为一个数字,表明有几个输入字串。 后面每一行为一个长度不超过80的字符串。 Output ...

分享包括但不限于计算机基础知识、数据结构与算法、Golang技术栈。年与时驰,意与日去,遂成枯落,多不接世,悲守穷庐,将复何及! 1648

c语言合法标识符 2024,hdu2024C语言合法标识符

#include#include#include#include#include#includeusing namespace std;int main(){//freopen("in.txt","r",stdin);int n;char a[];cin>>n;getchar();while(n--){gets(a);int flag=;for(int i=;i{if(a[i]=='_...

weixin_33209661的博客 688

hdu oj 2024

C语言合法标识符 Problem Description 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 Output 对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。 Sample Input

xiaohui724293246的专栏 629

HDU 2024 C语言合法标识符(笑)

http://acm.hdu.edu.cn/showproblem.php?pid=2024 是的,这题很简单,但是1A也不是那么容易,为什么把这么简单的题记录在博客呢,因为提醒自己要严谨,注意细节。 分析: 这题就是合法的命名规则。规定开头不能用数字,可以用大小写字母和下划线,下划线相当于字母一样,所以________也是命名合法的。必须把整个字符串遍历完,遇到奇怪的...

diaobin0154的博客 231

hdu2024

为什么80%的码农都做不了架构师?>>> ...

weixin_33743880的博客 286

HDU 2024 C语言合法标识符

Problem Description 输入一个字符串,判断其是否是C的合法标识符。 Input 输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。 Output 对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出"yes",否则,输出“no”。 Sample Input 3 12ajf fi8x_a ff ...

im_rookie的博客 261

c语言判断字符串合法标识符,HDU 2024 C语言合法标识符(以及一些关于输入和ctype.h的内容)...

C语言合法标识符输入一个字符串,判断其是否是C的合法标识符。Input输入数据包含多个测试实例,数据的第一行是一个整数n,表示测试实例的个数,然后是n行输入数据,每行是一个长度不超过50的字符串。Output对于每组输入数据,输出一行。如果输入数据是C的合法标识符,则输出”yes”,否则,输出“no”。Sample Input312ajffi8x_aff ai_2Sample Outputnoye...

weixin_30673759的博客 1844

HDU 2024

HDU 2024 写的比较乱,凑合看看啦,主要意思是: 1.先保证首字母是数字的时候pass 2.其次判断剩下的字母在a-z,A-Z,_,等之间即可。 #include&lt;stdio.h&gt; #include &lt;malloc.h&gt; #include &lt;stdbool.h&gt; #include &lt;string.h&gt; // HDU 2024 void c...

qxdo的博客 311

HDU-ACM2024

C语言合法标识符 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 57783    Accepted Submission(s): 22807 Problem Description 输入一个字符串,判断其是否是C的合

Discovering,Thinking and Finding——This Is My Logic 433
上一篇: CSUFT 个人赛(2) C题(POJ - 1316) D题(HDU - 2076) G题(HihoCoder - 1740) H题(HDU - 5640)
下一篇: 论 string 与 string.h , cstring 的区别
OneLine_
博客等级 码龄9年 48粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值