| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 529 人关注过本帖
标题:如何同时输入多行密文,求解!!!
只看楼主 加入收藏
浪漫横行
Rank: 4
等 级:业余侠客
威 望:1
帖 子:127
专家分:291
注 册:2013-4-30
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:1 
如何同时输入多行密文,求解!!!
恺撒生活在充满危险和阴谋的时代. 恺撒面对的最困难的问题是生存. 为了生存, 他决定创造一种密码. 这种密码听起来难以置信, 如果不知

道方法, 没有人可以破解.

你是恺撒军队的一个上尉. 你的工作是解密消息并将之提供给将军. 密码很简单. 对明文的每个字母右移5个位置以创建密文 (如字母'A', 密

文是'F').
有如下对应:

密文
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

明文
V W X Y Z A B C D E F G H I J K L M N O P Q R S T U

只有字母需要移位, 其它字符保持不变, 所有字母均是大写.


输入
输入为多行密文,每行包含1到200个字符, 组成恺撒的消息.
结束行单独一行: "END"

输出
对每行数据,输出对应的即恺撒的原始消息.

样例输入
NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
N BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ
IFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ
END
样例输出
IN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES
I WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROME
DANGER KNOWS FULL WELL THAT CAESAR IS MORE DANGEROUS THAN HE


搜索更多相关主题的帖子: 如何 color 
2013-04-30 23:21
helloUJS
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:168
专家分:731
注 册:2013-3-27
收藏
得分:20 
#include <stdio.h>
#include <string.h>
main()
{   
     char s[201];
     int i;
     gets(s);
     while(strcmp(s,"END")!=0)
       {
         for(i=0;s[i]!='\0';i++)
           if(s[i]>='A'&&s[i]<='Z')
             s[i]='A'+(26+s[i]-'A'-5)%26;
         s[i]='\0';
         printf("%s\n",s);
         gets(s);
      }
}
供参考
2013-04-30 23:55
快速回复:如何同时输入多行密文,求解!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025039 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved