| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 740 人关注过本帖
标题:译密码的问题~
只看楼主 加入收藏
starjun14
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:266
专家分:136
注 册:2009-4-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
译密码的问题~
#include <stdio.h>
void main()
{char c;
  while((c=getchar())!='\n')
   {if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
    {c=c+4;
      if(c>'Z'&&c<='Z'+4||c>'z')c=c-26;  为什么对小写字母不按c>'Z'&&c<='Z'+4 这样,而只写成c>'z'   
       }
      prinft("%c",c);
    }
    printf("\n");
}
搜索更多相关主题的帖子: 密码 
2009-09-02 11:38
starjun14
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:266
专家分:136
注 册:2009-4-26
收藏
得分:0 
高手们~帮个忙·~~
2009-09-02 16:13
starjun14
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:266
专家分:136
注 册:2009-4-26
收藏
得分:0 
高手们~帮个忙·~~
2009-09-03 11:35
starjun14
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:266
专家分:136
注 册:2009-4-26
收藏
得分:0 
高手们~帮个忙·~~
2009-09-03 11:35
jammyzm
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:90
专家分:126
注 册:2008-12-1
收藏
得分:20 
小写字母也可以按c>'Z'&&c<='Z'+4 来,但你分析下没那个必要加上。因为大于'Z'的可能有二种情况,1.'A'-'Z'加4导致;或2.输入'a'-'z'。   而大于'z'的只有一种情况就是'a'-'z'加4导致.
你分析下
2009-09-03 12:22
jammyzm
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:90
专家分:126
注 册:2008-12-1
收藏
得分:0 
小写字母也可以按c>'Z'&&c<='Z'+4 来,但你分析下没那个必要加上。因为大于'Z'的可能有二种情况,1.'A'-'Z'加4导致;或2.输入'a'-'z'。   而大于'z'的只有一种情况就是'a'-'z'加4导致.
你分析下
2009-09-03 12:22
xiongli181
Rank: 1
等 级:新手上路
帖 子:17
专家分:9
注 册:2009-9-3
收藏
得分:0 
因为你输入时 可能会有边接符(-) 和逗号(,)
 它们的ASCII是95和96
c>'Z'&&c<='Z'+4的意思是把它们排除
对于小写字母就没有毕要了
你可以查一下ASCII
只要一下就知道了
呵呵
2009-09-03 12:27
justforheng
Rank: 1
等 级:新手上路
帖 子:8
专家分:7
注 册:2009-9-2
收藏
得分:0 
if((c>'Z'&&c<='Z'+4)||(c>'z'&&c<='z'+4))c=c-26;
这样写是不是很爽啊
2009-09-03 13:37
baikil
Rank: 10Rank: 10Rank: 10
来 自:X星球
等 级:青峰侠
威 望:4
帖 子:282
专家分:1580
注 册:2009-7-20
收藏
得分:0 
if((c>=97&&c<=112)||(c>=65&&c<=90))---->控制了输入的只有字母(小写和大写)
{
      c=c+4;                       ---->步长为4的旋转字母
     if(c>90&&c<=94||c>112)        ---->如果小写与大写的后4个字母
         c=c-26;                   ---->收尾处理
}
prinft("%c",c);
这样的译密也能用吗
输入几次一看就出了你的一个规则.

自创QQ群64885635,方便C#学习交流.希望各项工作路好学都好入!
2009-09-03 15:21
猫叔
Rank: 2
等 级:论坛游民
帖 子:15
专家分:11
注 册:2009-7-16
收藏
得分:0 
因为小写字母比大写字母大,如果不加上c<='Z'+4,那么if(c>'Z'&&c<='Z'+4||c>'z')c=c-26;就会患逻辑错误
2009-09-06 16:01
快速回复:译密码的问题~
数据加载中...
 
   



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

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