/*单词加密算法*/

这段代码将小写字母转换为大写字母,并显示其ASCII值的个位数。程序通过循环读取输入的小写字母,利用ASCII码的差值进行大小写转换,并输出转换结果。
#include<stdio.h>
int main()
{
    int i;
    char ch_lower,ch_upper;
    for(i=1;i<=6;i++)
    {
        scanf("%c",&ch_lower)
        if(ch_lower>='a'&&ch_lower<='z')
        ch_upper=ch_lower-'a'+'A';
        printf("%c->%c->%d\n",ch_lower,ch_upper,ch=ch_upper%10);
    }
    return 0;
}


编程要求 本关的编程任务是补全右侧代码片段Encrypt和Dencrypt中Begin至End中间的代码,具体要求如下: 在Encrypt中,根据实验原理部分对置换密码算法的介绍,将明文字符串参数clearText通过密钥表参数cipherTab加密转换成密文,并存入密文字符串参数变量cipherText。 在Dencrypt中,与Encrypt函数功能相反,将密文字符串参数cipherText通过密钥表参数cipherTab解密转换成明文,并存入明文字符串参数变量clearText。 测试说明 平台将自动编译补全后的代码,并生成若干组测试数据,接着根据程序的输出判断程序是否正确。 以下是平台的测试样例: 测试输入: internet 4 7 3 1 2 6 0 5 预期输出: 密钥: 0 1 2 3 4 5 6 7 4 7 3 1 2 6 0 5 明文:internet 密文:rtentein 解密:internet 输入格式: 第1行:待加密的明文 第2行:置换密钥,索引从0开始,密钥表大小等于与明文长度一直 输出格式: 第1~3行:密钥表信息 第4行:明文 第5行:密文 第6行:解密 // // main.cpp // step2 // // Created by ljpc on 2018/10/16. // Copyright © 2018年 ljpc. All rights reserved. // #include <iostream> #include <algorithm> #include <stdio.h> #include <string.h> using namespace std; void Encrypt(int* cipherTab, int len, char* clearText, char* cipherText) { // 请在这里补充代码,完成本关任务 /********* Begin *********/ char clearText[]=""; cipherText[] /********* End *********/ } void Dencrypt(int* cipherTab, int len, char* clearText, char* cipherText) { // 请在这里补充代码,完成本关任务 /********* Begin *********/ /********* End *********/ } int main(int argc, const char * argv[]) { int cipherTab[100]; char ClearText[100]; char ClearText2[100]; char CipherText[100]; scanf("%s", ClearText); int len = int(strlen(ClearText)); for (int i=0; i<len; i++) { scanf("%d", &cipherTab[i]); } printf("密钥:\n"); for (int i=0; i<len; i++) { printf("%d ", i); } printf("\n"); for (int i=0; i<len; i++) { printf("%d ", cipherTab[i]); } printf("\n"); printf("明文:%s\n", ClearText); Encrypt(cipherTab, len, ClearText, CipherText); printf("密文:%s\n", CipherText); Dencrypt(cipherTab, len, ClearText2, CipherText); printf("解密:%s\n", ClearText2); return 0; }
最新发布
09-11
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

超翔之逸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值