5313 [JL]判断邮箱地址 升级版

 时间限制: 1 s
 空间限制: 1000 KB
 题目等级 : 黄金 Gold
 查看运行结果
 
 
题目描述 Description

正确的邮箱地址格式要求:

1.格式:用户名@服务器名.后缀域名”

2.用户名、服务器名、后缀域名均由字母、英文与下划线组成

输入一个邮箱地址判断它是不是合法的邮箱地址。

输入格式:

1.不会出现多节域名(比如:123@sina.com.cn 这种不会出现)

2.不会出现中文字符

输入描述 Input Description

输入仅一行(Mail.in):

为疑似邮箱的字符串

输出描述 Output Description

输出仅一行(Mail.out):

是邮箱,输出“yes”,

不是则输出“no”(不包括引号)

(样例输出中,括号中的内容不用输出)

样例输入 Sample Input

输入样例#1:

45678sss@.cn

输入样例#2:

hello@microsoft.cn

输入样例#3:

luogu.luogu@

输入样例#4:

#$%@sina.com
样例输出 Sample Output

输出样例#1:

no
(没有服务器名)

输出样例#2:

yes
(符合要求)

输出样例#3:

no
(“@”位置不对,没有后缀名)

输出样例#4:

no
(无效字符)
数据范围及提示 Data Size & Hint

邮箱字符串长度<=255

分类标签 Tags 点此展开

 
暂无标签
题解:
模拟即可
AC代码:
#include<cstdio>
#include<cstring>
using namespace std;
char s[];
inline bool judge(char &ch){
return (ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z')||(ch>=''&&ch<='')||(ch=='_');
}
int main(){
scanf("%s",s);
int len=strlen(s);
int ai=;int flag=;
for(int i=;i<len;i++) if(s[i]=='@'){ai=i;break;}
if(!ai){puts("no");return ;}
for(int i=;i<ai;i++) if(!judge(s[i])){puts("no");return ;}
if(!judge(s[ai+])){puts("no");return ;}
for(int i=ai+;i<len;i++) if(s[i]=='.'){
flag=;
if(!judge(s[i+])){puts("no");return ;}
}
if(!flag){puts("no");return ;}
puts("yes");
return ;
}

5313 [JL]判断邮箱地址 升级版的更多相关文章

  1. PHP判断邮箱地址是否合法的正则表达式

    PHP判断邮箱地址是否合法的正则表达式: function checkEmail($inAddress){ return (preg_match("/^([a-zA-Z0-9_-])+@([ ...

  2. jQuery-文本框事件应用-判断邮箱地址

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. iOS开发-通过正则表达式进行各种判断银行卡,车牌号,邮箱地址,QQ,身份证,全字母,仅输入字母或数字同时包含大小写字母和数字,仅能输入中文等

    /* *  验证银行卡号是否正确 *  车牌号验证 *  检验邮箱地址是否正确 *  手机号中间四位密文显示 *  判断QQ号是否正确(5-11位) *  判断身份证号是否正确(如末位为字母请用“x” ...

  4. linux mail利用外部邮箱地址发邮件

    mail命令发送邮件需要sendmail或postfix服务 三种常用格式发信 mail -s "标题" xxx@xxx.xxx #第一种方法,你可以把当前shell当成编辑器来用 ...

  5. petapoco sql语句参数化 插入邮箱地址

    直接上代码,我是这样插入信息的 string sql = string.Format(@" INSERT INTO T_Log ( UserId , ProValue ) VALUES ( ...

  6. GIT 查看/修改用户名和邮箱地址

    用户名和邮箱地址的作用用户名和邮箱地址是本地git客户端的一个变量,不随git库而改变.每次commit都会用用户名和邮箱纪录.github的contributions统计就是按邮箱来统计的.查看用户 ...

  7. php发送邮件处理功能页面去除重复的邮箱地址

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. Javascript正则表达式验证邮箱地址

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> < ...

  9. Google 宣布支持中文邮箱地址

    Gmail 宣布,即日起开始支持非拉丁字符邮箱地址.也就是说,我们可以在 Gmail 中针对中文邮箱地址发送和接收邮件了. 全世界母语是拉丁字母语言的人类不超过全人类总数的一半,母语是英语的人数更少. ...

随机推荐

  1. PHP实现写LOG日志的代码

    这篇文章给大家介绍的内容是关于PHP实现写LOG日志的代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. public function write_log(){ //设置目录时间 ...

  2. tarjan求强连通分量模板

    什么是强连通分量? 百度百科 有向图强连通分量:在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通(stro ...

  3. Python进阶-操作redis

    1.String 操作 redis中的String在在内存中按照一个name对应一个value来存储 set() #在Redis中设置值,默认不存在则创建,存在则修改 r.set('name', 'z ...

  4. flask——CSRFToken保护

    根据 csrf_token 校验原理,具体操作步骤有以下几步: 1.后端生成 csrf_token 的值,在前端请求登录或者注册界面的时候将值传给前端,传给前端的方式可能有以下两种: 在模板中的 Fr ...

  5. 在eclipse中如何在大量项目中查找指定文件

    在eclipse中如果希望在大量的项目中寻找指定的文件可不是一件轻松的事,还好eclipse提供了强大的搜索功能. 我们可以通过通配符或正则表达式来设定查寻条件,下面是操作示例: ctrl+h 打开搜 ...

  6. mongodb数据库的一些常用命令列表

    超级用户相关:use admin #增加或修改用户密码db.addUser(ixigua,'pwd') #查看用户列表db.system.users.find() #用户认证db.auth(ixigu ...

  7. Uva12657 Boxes in a Line

    题目链接:传送门 分析:每次操作都会花费大量时间,显然我们只需要关注每个元素的左边是啥,右边是啥就够了,那么用双向链表,l[i]表示i左边的数,r[i]表示i右边的数,每次操作模拟一下数组的变化就好了 ...

  8. 文件处理: read、readline、 readlines()

    假设a.txt的内容如下所示: Hello Welcome What is the fuck.. 1. read([size])方法 read([size])方法:从文件当前位置起读取size个字节, ...

  9. 建立DJANGO的自定义TAG

    DJANGO的TAG分为三类: • simple_tag : Processes the data and returns a string• inclusion_tag : Processes th ...

  10. nyoj_79_拦截导弹_201403182040

    拦截导弹 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 某国为了防御敌国的导弹袭击,发展中一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到 ...