C語言文章更新目錄
C/C++學習資源(百度雲盤鏈接)
計算機二級資料(過級專用)
C語言學習路線(從入門到實戰)
編寫C語言程序的7個步驟和編程機制
C語言基礎-第一個C程序
C語言基礎-簡單程序分析
VS2019編寫簡單的C程序示例
簡單示例,VS2019調試C語言程序
C語言基礎-基本算法
C語言基礎-數據類型
C語言中的輸入輸出函數
C語言流程控制語句
C語言數組——一維數組
C語言數組——二維數組
C語言數組——字符數組
C語言中常用的6個字符串處理函數
精心收集了60個C語言項目源碼,分享給大家
C語言核心技術——函數
C代碼是怎樣跑起來的?
在項目開發中,爲了防止一些敏感信息的泄露,通常我們會對這些信息進行加密,比如用戶的登錄密碼,如果不加密直接進行明文存儲的話,就很容易被人看到,但密碼對用戶來說是保密的,因此我們需要對數據進行加密後再存儲,這樣一來,即使被看到也是我們加密後的數據,從而大大提高了安全性。
今天,我們就來寫一個小小的例子來模仿一下字符串加密和解密的過程。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
int main() {
int result = 1;
int i;
int count = 0;
char text[128] = {'\0'};//存放明文字符串
char cryptograph[128] = {'\0'};//存放密文字符串
while (1)
{
if (result==1)
{
printf("請輸出要加密的明文:\n");
scanf("%s", &text);
count = strlen(text);
for (i = 0; i < count; i++)
{
cryptograph[i] = text[i] + i + 5;//加密
}
cryptograph[i] = '\0';
printf("加密後的密文是:%s\n", cryptograph);
}
else if (result==2)
{
count = strlen(text);
for (i = 0; i < count; i++)
{
text[i] = cryptograph[i] - i - 5;//解密
}
text[i] = '\0';
printf("解密後的明文是:%s\n",text);
}
else if (result==3)
{
break;
}
else
{
printf("請按提示輸入:\n");
}
printf("輸入1加密明文,輸入2對剛加密的明文進行解密,輸入3退出程序:\n");
printf("請按提示輸入:\n");
scanf("%d",&result);
}
return 0;
}
運行結果:
程序分析:
這裏採用的加密算法十分簡單,就是將字符串中的每個字符加上它在字符串中的位置和一個偏移值5,cryptograph[i] = text[i] + i + 5;//加密
我們輸入的字符串是helloworld
,第一個字符’h’在字符串中的位置是0,那麼它對應的密文字符是'h'+0+5
,即’m’。
如果您覺得本篇文章對您有幫助,請轉發給更多的人
【C語言中文社區】是一個C語言/C++視頻教程、學習筆記、電子書、計算機二級資料等專注於C語言/C++編程學習者的乾貨知識分享平臺,精選深度文章,分享優秀乾貨類、技能類的學習資源,幫助學習中的你。