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. Tcl之Math

    expr is for Tcl to do math operations. It takes all of its arguments ("2 + 2" for example) ...

  2. Caffe RPN:把RPN网络layer添加到caffe基础结构中

    在测试MIT Scene Parsing Benchmark (SceneParse150)使用FCN网络时候,遇到Caffe错误. 遇到错误:不可识别的网络层crop 网络层 CreatorRegi ...

  3. Python 操作excel day5

    一.Python操作excel python操作excel使用xlrd.xlwt和xlutils模块 1.xlrd模块是读取excel的: 2.xlwt模块是写excel的: 3.xlutils是用来 ...

  4. JavaScript Simple Explain and Use

    Javascript 说明: JavaScript 和 Java 之间几乎没有任何关系. JavaScript原名为LiveScript,他的作用只是为了处理一些复杂的动态网页. 目前,JS是遵循EC ...

  5. 迷宫自动生成以及基于DFS的自动寻路算法

    直接贴代码 #include<ctime> #include<conio.h> #include<iostream> #include<windows.h&g ...

  6. UVA - 12113 Overlapping Squares(dfs+回溯)

    题目: 给定一个4*4的棋盘和棋盘上所呈现出来的纸张边缘,问用不超过6张2*2的纸能否摆出这样的形状. 思路: dfs纸的张数,每一张中枚举这张纸左上角这个点的位置,暴力解题就可以了. 这个题的覆盖太 ...

  7. 微信小程序 setData动态修改数据数组的值

    1.问题说明 有一组数据,用来存储图片路径,动态修改图片的路径来上传图片,而小程序JS只能通过事件获取时机和setData方法修改数据来改变view. 而用这样写的方式明显是错误的 2.解决办法 字符 ...

  8. CodeForces 800B Volatile Kite(点与直线的距离)(Java 实现)

    CodeForces 800B Volatile Kite(点与直线的距离)(Java 实现) 传送门 如果想要一个凸多边形不退化为凹多边形,那么任意的相邻的三个点必然最多形成一条直线.因此我们可以求 ...

  9. [bzoj4247][挂饰] (动规+排序)

    Description JOI君有N个装在手机上的挂饰,编号为1...N. JOI君可以将其中的一些装在手机上. JOI君的挂饰有一些与众不同——其中的一些挂饰附有可以挂其他挂件的挂钩.每个挂件要么直 ...

  10. Leetcode 89.格雷编码

    格雷编码 格雷编码是一个二进制数字系统,在该系统中,两个连续的数值仅有一个位数的差异. 给定一个代表编码总位数的非负整数 n,打印其格雷编码序列.格雷编码序列必须以 0 开头. 示例 1: 输入: 2 ...