| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 467 人关注过本帖
标题:求助!!我们老师难以解答~高手来帮忙!!~!
只看楼主 加入收藏
s340158186
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2009-12-1
结帖率:0
收藏
已结贴  问题点数:20 回复次数:5 
求助!!我们老师难以解答~高手来帮忙!!~!
题目:请设计一个加密程序,首先输入一个整型数据作为密钥,然后,该程序可将键盘上输入的以@作为结束符的文本进行加密,加密的算法是以整型密钥为转换间隔,将字母转换为字母表中后面的字母,如果转换后超过’z’则自动跳转到开头。要求加密后大小写保持原格式,标点符号不变。

以下是我设计的程序,但是结果都被执行两次——就是每个if语句都进入两次
比如输入5    a,  则得到ff
这是为什么呢?~!?~!?如有高手能解答,不胜感谢~!!!!!!



#include <stdio.h>
void main()
{
    int k;
    char x,r,s;
    scanf("%d",&k);
    while((x=getchar())!='@')
    {
        if (x>='a' && x<='z'){
            if (x>='a' && x<='z'-k)
                r=x+k;
            else r = 'a'+ (x+k-'z');
            putchar(r);
        }
        else if (x>='A' && x<='Z'){
            if (x>='A' && x<='Z'-k)
                r=x+k;
            else r = 'A'+ (x+k-'Z');
            putchar(r);
        }
        else r = x;
            putchar(r);
    }
}
搜索更多相关主题的帖子: 解答 老师 
2009-12-01 11:42
xu362726904
Rank: 6Rank: 6
等 级:侠之大者
帖 子:160
专家分:471
注 册:2009-6-18
收藏
得分:10 
#include <stdio.h>
void main()
{
    int k;
    char x,r,s;
    scanf("%d",&k);
    while((x=getchar())!='@')
    {
        if (x>='a' && x<='z'){
            if (x>='a' && x<='z'-k)
                r=x+k;
            else r = 'a'+ (x+k-'z');
            putchar(r);
        }
        else if (x>='A' && x<='Z'){
            if (x>='A' && x<='Z'-k)
                r=x+k;
            else r = 'A'+ (x+k-'Z');
            putchar(r);
        }
        else {r = x;
            putchar(r);}//用大括号,多了一个输出
    }
}
2009-12-01 12:04
zhangshu2005
Rank: 2
等 级:论坛游民
帖 子:11
专家分:22
注 册:2009-11-16
收藏
得分:10 
#include <stdio.h>
void main()
{
    int k;
    char x;
    scanf("%d",&k);
    while((x=getchar())!='@')
    {
        if ((x>='a' && x<='z') || (x>='A' && x<='Z'))
        { x+=k;
        if ((x>'Z' && x<'a') || (x>'z'))
            x-=26;
        }
         putchar(x);
    }
}
2009-12-01 12:08
s340158186
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2009-12-1
收藏
得分:0 

xu362726904好牛逼!!!眼力果然好!谢啦!!~!以后有不懂我还要多向你请教啊!
2009-12-01 14:34
s340158186
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2009-12-1
收藏
得分:0 
回复 3楼 zhangshu2005
比我的简单好多……谢了!
2009-12-01 14:35
s340158186
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2009-12-1
收藏
得分:0 
回复 2楼 xu362726904
xu362726904好牛逼!!!眼力果然好!谢啦!!~!以后有不懂我还要多向你请教啊!
2009-12-01 14:36
快速回复:求助!!我们老师难以解答~高手来帮忙!!~!
数据加载中...
 
   



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

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