精华内容
下载资源
问答
  • 任意输入的一个字符进行加密 然后解密 输出加密解密的结果。(注意是一个字符,不是字符串。) 谁有这题的代码? 谢谢
  • 编写加密程序,将用户输入的一个英文句子加密为加密字符串,然后输出加密字符串。假设句子长度不超过100个字符。根据给定的句子加密函数原型SentenceEncoding,编写函数SentenceEncoding调用给定的字符加密函数...

    编写加密程序,将用户输入的一个英文句子加密为加密字符串,然后输出加密字符串。假设句子长度不超过100个字符。根据给定的句子加密函数原型SentenceEncoding,编写函数SentenceEncoding调用给定的字符加密函数CharEncoding完成句子加密。然后,编写主程序提示用户输入英文句子,然后调用函数SentenceEncoding对句子加密,最后输出加密后的句子。字符加密规则为大写字母和小写字母均加密为其补码, 我们定义ASCII码值相加为’A’+’Z’即155的两个大写字母互为补码,ASCII码值相加为’a’+’z’即219的两个小写字母互为补码。空格用@代替,句号以#代替,其它字符用句点代替。

    函数原型:
    void SentenceEncoding(char *soure,char *code);
    功能:对待加密字符串source加密后保存加密字符串到code.
    参数:char *soure,指向待加密句子的字符串指针;
    char *code 指向加密字符串的字符串指针;
    字符加密函数代码。

    【其实就是翻译成代码就行】

    在这里插入代码片#include <stdio.h>
    /*
    功能:对待加密字符串source加密后保存加密字符串到code.
    参数:char *soure,指向待加密句子的字符串指针;
          char *code 指向加密字符串的字符串指针;
     
     字符加密规则为大写字母和小写字母均加密为其补码, 我们定义ASCII码值相加为’A’+’Z’即155的两个大写字母互为补码,ASCII码值相加为’a’+’z’即219的两个小写字母互为补码。空格用@代替,句号以#代替,其它字符用句点代替。
    */
    void SentenceEncoding(char *soure,char *code);
    //字符加密函数代码
    char CharEncoding(char ch);
    int main(int argc, const char * argv[]) {
        
        printf("Input source sentence:");
        char a[100],b[100];
        gets(a);
        printf("\n");
        //第一次居然把puts放这了
        SentenceEncoding(a, b);
        printf("Encoded sentence:");
        puts(b);
        return 0;
    }
    
    /*
    功能:对待加密字符串source加密后保存加密字符串到code.
    参数:char *soure,指向待加密句子的字符串指针;
          char *code 指向加密字符串的字符串指针;
    */
    void SentenceEncoding(char *soure,char *code)
    {
    	int i = 0;
        for ( i = 0; *(soure+i) != '\0'; i++) {
            if (*(soure+i) > 'A' && *(soure+i) < 'Z') {
                *(code+i) = 155 - *(soure+i);
            }
            else if (*(soure+i) > 'a' && *(soure+i) < 'z')
                *(code+i) = 219 - *(soure+i);
            else
                *(code+i) = CharEncoding(*(soure+i));
        }
        *(code + i) = '\0';
        
        
    }
    char CharEncoding(char ch)
    {
        char encode  = 0;
        if(ch>='A' && ch<='Z')
        {
            encode  = ('A'+'Z')- ch;
        }
        else if(ch>='a' && ch<= 'z' )
        {
            encode  = 'a'+'z'-ch;
        }
        else
        {
            switch(ch)
            {
            case ' ': encode = '@';
                        break;
            case '.': encode = '#';
                        break;
            default: encode = '.';
                        break;
            }
        }
        return encode;
    }
    
    

    运行结果:
    在这里插入图片描述

    需要注意的地方:

    1. 字符串传入函数的时候可以用数组,也可以直接用指针
    2. puts函数请放到处理后的字符串那里,否则会出现空行什么也没有
    3. 在作业系统里发现字符串的 ‘\0’ 必须要自己输入否则之后还有可能有随机出现的值,要尽可能主动发现并避免【请看两次代码的区别】
      没有在字符串中录入 '\0'
      【请看两次代码的区别】
      成功录入'\0'
    展开全文
  • 然后,编写主程序提示用户输入英文句子,然后调用函数SentenceEncoding句子加密,最后输出加密后句子。字符加密规则为大写字母和小写字母均加密为其补码, 我们定义ASCII码值相加为’A’+’Z’即155大写...

    假设句子长度不超过100个字符。根据给定的句子加密函数原型SentenceEncoding,编写函数SentenceEncoding调用给定的字符加密函数CharEncoding完成句子加密。然后,编写主程序提示用户输入英文句子,然后调用函数SentenceEncoding对句子加密,最后输出加密后的句子。字符加密规则为大写字母和小写字母均加密为其补码, 我们定义ASCII码值相加为’A’+’Z’即155的两个大写字母互为补码,ASCII码值相加为’a’+’z’即219的两个小写字母互为补码。空格用@代替,句号以#代替,其它字符用句点代替。
    函数原型:
    void SentenceEncoding(char *soure,char *code);
    功能:对待加密字符串source加密后保存加密字符串到code.
    参数:char *soure,指向待加密句子的字符串指针;
    char *code 指向加密字符串的字符串指针;

    代码:

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    #define N 100
    char CharEncoding(char ch);
    void SentenceEncoding(char *soure,char *code);
    int main()
    {
        char soure[N],code[N];
        printf("Input source sentence:");
        gets(soure);
        SentenceEncoding(soure,code);
        printf("Encoded sentence:");
        puts(code);
        return 0;
    }
    void SentenceEncoding(char *soure,char *code)
    {
        int i;
        for(i=0;soure[i]!='\0';i++)
        {
            code[i]=CharEncoding(soure[i]);
        }
        code[i]='\0';
    }
    char CharEncoding(char ch)
    {
        char encode  = 0;
        if(ch>='A' && ch<='Z')
        {
            encode  = ('A'+'Z')- ch;
        }
        else if(ch>='a' && ch<= 'z' )
        {
            encode  = 'a'+'z'-ch;
        }
        else
        {
            switch(ch)
            {
            case ' ': encode = '@';
                        break;
            case '.': encode = '#';
                        break;
            default: encode = '.';
                        break;
            }
        }
        return encode;
    }
    
    展开全文
  • 从键盘上输入一个字符串存放在一个字符数组中,按照以下规则加密:其中所有英文字母加3,即字母’A’加密后变成’D’,而’X’加密后变成’A’,小写字母也采用此规则转换为对应小写字母,其它字符不变,将...

    题目内容:

    从键盘上输入一个字符串存放在一个字符数组中,按照以下规则对其加密:其中所有的英文字母加3,即字母’A’加密后变成’D’,而’X’加密后变成’A’,小写字母也采用此规则转换为对应的小写字母,其它字符不变,将加密后的字符串存放到另一个字符数组中,输出原字符串和加密后的字符串。

    输入格式:

    字符串的输入以回车来结束,字符串的长度不超过50个字符。

    输出格式:

    分两行输出,第一行是原字符串,第二行是加密后的字符串,每行行末无空格。

    输入样例:

    XYZ 123*! abc

    输出样例:

    XYZ 123*! abc
    ABC 123*! def

    时间限制:500ms内存限制:32000kb

    #include<stdio.h>
    #include<string.h>
    int main()
    {
    	char a[ 50 ] , b[ 50 ] ;
    	int l , i ;
    	gets( a ) ;
    	l = strlen( a ) ;
    	for( i = 0 ; i <= l - 1 ; i++ )
    	{
    		b[ i ] = a[ i ] ;
    		if( a[ i ] >= 'A' && a[ i ] < 'X' ) b[ i ] += 3 ;
    		else if( a[ i ] >= 'a' && a[ i ] < 'x' ) b[ i ] += 3 ;
    		else if( a[ i ] >= 'X' && a[ i ] <= 'Z' ) b[ i ] -= 23 ;
    		else if( a[ i ] >= 'x' && a[ i ] <= 'z' ) b[ i ] -= 23 ;
    	}
    	for( i = 0 ; i <= l - 1 ; i++ )
    		printf( "%c" , a[ i ] ) ;
    	printf( "\n" ) ;
    	for( i = 0 ; i <= l - 1 ; i++ )
    		printf( "%c" , b[ i ] ) ;
    	return 0 ;
    }
    
    展开全文
  • 这是一个用Java编写的简易字符加密文件,可以输入的任何字符串实现加密解密功能
  • }else{ throw new Exception("含有非法字符"); } } return sb.toString(); } public static boolean check(char ch) { String str = new Character(ch).toString(); if(str.matches(regex)){ return ...

    展开全部

    import java.util.HashMap;

    import java.util.Map;

    public class EncryptDemo {

    /**                              01234567890122109876543210*/

    private static String DEFAULT = "abcdefghijklmnopqrstuvwxyz";

    private static String regex = "[a-zA-Z]";

    private static Map upperMap = new HashMap();

    private static Map lowerMap = new HashMap();

    static {

    int length = DEFAULT.length();

    for(int i=0;i

    char key = DEFAULT.charAt(i);

    char value = DEFAULT.charAt(length-1-i);

    lowerMap.put(key, value);

    }

    String DEFAULT1 = DEFAULT.toUpperCase();

    for(int i=0;i

    char key = DEFAULT1.charAt(i);

    char value = DEFAULT1.charAt(length-1-i);

    upperMap.put(key, value);

    }

    }

    public static String encryptString(String string) throws Exception {

    StringBuilder sb = new StringBuilder();

    for(char ch : string.toCharArray()) {

    if(check(ch)) {

    sb.append((upperMap.containsKey(ch)?upperMap.get(ch):lowerMap.get(ch)));

    }else{

    throw new Exception("含有非法字符");

    }

    }

    return sb.toString();

    }

    public static boolean check(char ch) {

    String str = new Character(ch).toString();

    if(str.matches(regex)){

    return true;

    }else {

    return false;

    }

    }

    private EncryptDemo(){}

    public static void main(String[] args) throws Exception {

    System.out.println(EncryptDemo.encryptString("HelloWorld"));

    }

    }

    你看看合e68a84e8a2ad62616964757a686964616f31333332616463不合要求,仅供参考

    展开全文
  • 加密字符串为:原有字符加上其在字符串中位置在加偏移值5.int main(){ int result=1; int i; int count=0; char Text[128]={'\0'}; char secretText[128]={'\0'}; while(1){ if(result==1){ printf(&...
  •  先将用户输入的字符串利用toCharArray()转化为字符数组,然后利用循环分别位进行加密,对于特殊的XYZ加密为ABC需要用条件语句转化,最后转化为字符串输出。 2.程序流程图: 3.程序源代码: package aaa...
  • 1)读入密钥key是一个字符串; 2)明文中字符c密文为c^key[i]; 3)循环使用key中各个字符,直至处理完全部明文。如果key为空,则不作加密 4)解密时,用同一个key重新加密密文,就可以得到明文。 【输入形式...
  • 题目描述:编程实现任意字符串的加密处理。通讯中为了保密,常常将明文信息转换成密文...输入输入一个明文,长度不超过100个字符输入直到文件结尾。 输出:输出加密密文。 样例输入:YUANzi1987 样例输出:
  • /*对输入的一串数字进行排序然后进行加密和简单的解密 加密其实就是对这个字符进行异或操作 解密还是对这个字符进行异或操作,最终实现复原 利用的是ascall编码的原理 */ public class Scanner01 { public static...
  • 再编写一个解密函数 实现上述加密字符串进行解密。 编写测试程序,在测试程序中输入字符串, 并输出加密和解密后的字符串。 例如: 字符串 str1: avbV125av1, n 默认为 5 则新的字符串 str2: fagA625fa5 就拿来...
  • C++对字符小小加密与解密

    万次阅读 2016-08-11 14:59:43
    输入的一行字符串以加密的形式输出,然后将其解密,解密的字符序列与输入的正文比较,吻合时输出解密的正文,否则解密失败 加密时,将每个字符的ASCII码依次反复加上“4962873”中的数字,并在32(‘’)~122(‘z...
  • 假设我们有一个小写字母字符串文本,还有另一个称为key的字符串。我们必须找到一个的字符串,其中text [i]中每个字母都使用offset键[i]移到右侧。这里,由key [i]在字母表中位置表示偏移量(A = 0,B = 1等)...
  • 字符加密

    2014-09-16 19:12:35
    加密方法:从一个指定开始位置S开始,使每隔M位置上字母加上N转换成另外一个字母,若转换后字母超过'z'或'Z',则从'a'或'A'开始继续相加(eg.'z' + 2 = 'b', 'Z' + 2 = 'B')则从若不是字母则不予处理 ...
  • 字符加密

    2016-10-28 17:45:00
    输入一个字符串,计算出字符串长度,运用ASCLL码进行加密加密时用for循环字符串加密,最后将加密字符添加到一个空string类型成员中输出。 (2)程序流程图 (3)源代码 import java.util....
  • 完成请求参数数据的格式输出(因为浏览器复制出来的格式直接用python是不能请求的所以我用了之前写的一个方法来完成请求数据格式的转换)例如:输入:'''course_finance_id[0]:252638total_pric...
  • 字符加密

    2021-01-05 21:33:14
    我们给出一种最简的的加密方法,给定的一个字符串,把其中从a-y,A-Y的字母用其后继字母替代,把z和Z用a和A替代,其他非字母字符不变,则可得到一个简单的加密字符串。 输入 输入一行,包含一个字符串,长度小于80...
  • ‘‘‘题目描述1、对输入的字符串进行加解密,并输出。2加密方法为:当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;当内容是数字时则把该数字加1,...
  • 1、输入一个英文的字符串或者要解密的字符串 2、经过加密或解密之后 3、输出加密或解密的字符串 package cn.sxy.demo; import java.util.Scanner; /** * 加密:位运算 */ public class Demo15 { /** * ...
  • 本例通过位运算疑惑运算符把字符串与一个制定值进行以后运算,从而改变字符串中每个字符的值,这样就可以得到一个加密字符串,当把加密字符串作为程序输入内容,异或运算会把加密字符串还原为原字符...
  • If you don't look back...PasswordUtils这个加密工具类是在Ranger项目源码中发现,它是一个安全管理框架,普通的加密需求应该用它的加密工具类就OK了; 首先,用户输入密码,前端先用type为password把密码显示...
  • 大佬们,小不情之请,下面这道题用最简单方法怎么写...题目:输入一段英文字符电文,以回车结束输入该电文进行加密,将电文中字母 变为其后第 3 字母,最后字母 x, y, z 变成 a, b, c。 ...
  • 怎样简单实现一个能够智能判定输入字符序列变换方式小程序 本文由CSDN-蚍蜉撼青松 【主页:http://blog.csdn.net/howeverpf】原创,转载请注明出处! 问题描写叙述: 在分析网络数据包或者研究安全问题时。...
  • 如何简单实现一个可以智能判定输入字符序列变换方式小程序 本文由CSDN-蚍蜉撼青松 【主页:http://blog.csdn.net/howeverpf】原创,转载请注明出处! 问题描述:  在分析网络数据包或者研究安全问题时,经常会...
  • 字符加密解密

    2020-07-26 13:19:12
    对输入的字符串进行加解密, 并输出. 加密方法为: 当内容是英文字母时则用该英文字母的后一个字母替换, 同时字母变换大小写, 如字母a时则替换为B, 字母Z时则替换为a. 当内容是数字时则把该数字加1, 如0替换1, 1替换2,...
  • 灵灵想要对一个字符串进行加密加密的方式很简单,就是将字符串首字母变成大写。 当然咯,如果字符串首字母一开始就是大写,你就不用进行任何操作了。 注意,在加密的过程中,除了首字母,其他元素都是不需要...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,113
精华内容 445
关键字:

对输入的一个字符加密