输入一个全英文的字符串,输出加密后的字符串。 - 爱问答

(爱问答)

输入一个全英文的字符串,输出加密后的字符串。

输入一个全英文的字符串,输出加密后的字符串。  文字信息在传递之前希望先加密。加密的含义是将每个字符转变为另一个字符,加密规则是:  为26个英文字母规定一个序号,a,b,c,d,…,z依次编号为1,2,3,4,…,26.  字符串中每个英文字符的序号加上字符串的长度再加上该字符在字符串中的位置(从0开始计数),得到新字符的序号。如果新序号大于26,则求余得到1-26之间的序号,该字符就转换为新序号对应字符。  大小写都遵从此规则。

什么语言编写?

以下是C的参考

#include <stdio.h>

#include <string.h>

int main()

{

    char s[1024],c;

    int i,l;

    scanf("%s",s);

    l=strlen(s);

    for(i=0; i<l; i++)

        {

            c=s[i];

            if (c>='a' && c<='z')

                {

                    c-='a';

                    c+=l;

                    c+=i;

                    c%=26;

                    c+='a';

                }

            else if (c>='A' && c<='Z')

                {

                    c-='A';

                    c+=l;

                    c+=i;

                    c%=26;

                    c+='A';

                }

           s[i]=c;

        }

    printf("%s ",s);

    return 0;

}


下一篇:结果应该是?(如果程序有错请指出)

上一篇:关于c#线程的问题

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?