c入门番外篇——我们用密码交流怎么样?

最近看到一个关于华罗庚先生的小故事。一九二九年,苏家驹先生在上海《学艺》七卷上发表了《代数式的五次方程之解法》,华罗庚先生发现此文在一个十二阶段的行列式中有计算差错,便写出《苏家驹之代数解法不能成立的理由》的论文,于一九三O年发表于上海《科学》杂志,论文引起了清华大学熊庆来教授的重视,得意后续进入清华。那一年他才20岁,因为家境贫寒,从高中辍学多年。

看见师弟埋头搞一些数字,我便问道:“师弟,你在破解数学难题?”
师弟:“倒不是什么数学难题?是在翻译密码?”
我好奇道:“密码?什么密码?”
师弟:“程夏同学,不知道最近在玩什么游戏,给我了一张密码表,然后发了我一些数字,我再翻译看看都是些啥。”
我:“为什么不借助机器自动翻译呢?”
师弟:“我怎么忘记了这事。我应该写个程序,一劳永逸的。”

密码破解

密码表如下

0开始
1 a
2 b
3 c
4 d
5 e
6 f
7 g
8 h
9 i

以00开始
1 j
2 k
3 l
4 m
5 n
6 o
7 p
8 q
9 r

以000开始
1 s
2 t
3 u
4 v
5 w
6 x
7 y
8 z

举例说明:
加密报文: 012300123000123 翻译后: abcjklstu
现程夏发的信息是: 00010550007006000320064699600050030920090100900070100022080090550074
她的实际意思是什么呢?

#include <stdio.h>
#include <string.h>

char table[3][10] = {
   //0    1    2    3    4    5    6    7    8    9
    '1', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
    '2', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r',
    '3', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0'
};

void decode(char *secret)
{
    int i;
    int zero_num = 0;

    for(i=0; i<strlen(secret); i++) {
        if(secret[i] == '0') {
            zero_num++;
            if (i>=1 && secret[i-1]!='0') {
                zero_num = 1;
            }
            continue;
        }

        printf("%c", table[zero_num-1][secret[i]-'0']);
    }

}

int main()
{

    char *secret = "00010550007006000320064699600050030920090100900070100022080090550074";
    decode(secret);
    return 0;
}
  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
esp32-c3入门教程 环境篇③——vs code ide快速入门是关于如何使用VS Code IDE进行ESP32-C3开发的教程。VS Code是一种功能强大且流行的集成开发环境,它提供了许多便捷工具和插件来简化代码编写和调试的过程。 首先,我们需要在电脑上安装VS Code。你可以从官方网站上下载并安装VS Code。 安装完成后,打开VS Code并点击"Extensions"图标,搜索并安装ESP-IDF插件。这个插件是为了和ESP32-C3开发框架进行集成而开发的。 接下来,我们需要配置ESP-IDF插件。首先,点击左侧的扩展图标,找到ESP-IDF插件并点击设置图标。然后,找到"espidf.espIdfPath"选项,将其设置为你的ESP-IDF框架的路径。 现在,我们可以开始创建一个新的ESP32-C3项目。点击"File"菜单,选择"New File",然后输入项目的名称。然后,点击"File"菜单中的"Save"来保存项目文件。 接下来,打开终端窗口,点击"Terminal"菜单,选择"New Terminal"。在终端中,输入以下命令来初始化ESP-IDF环境: idf.py set-target esp32c3 idf.py menuconfig 这将打开ESP-IDF的配置菜单,在这里你可以配置各种参数和选项。 配置完成后,我们可以开始编写和调试代码了。在VS Code中,点击左侧的扩展图标,找到ESP-IDF插件并点击设置图标。然后,点击"Build"按钮来构建项目。 构建完成后,我们可以使用VS Code的调试功能来调试代码。点击左侧的调试图标,然后点击"Add Configuration"按钮来添加一个调试配置。然后,点击"Debug"按钮来启动调试模式。 总之,使用VS Code IDE进行ESP32-C3开发是非常方便和高效的。它提供了许多工具和插件来简化开发流程,并提供了强大的调试功能来帮助我们调试代码。希望这个快速入门教程对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值