導航:首頁 > 文檔加密 > 輸入字元加密為後四位

輸入字元加密為後四位

發布時間:2023-07-22 18:55:07

① c語言:有一行電文,按如下規律加密,將每個字母變為其後的第四個字母,非字母字元不變,電文從鍵盤輸入,

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

#define N 100
void main()
{
char a[N];
int i,len;

memset(a,'\0',N);//初始化數組a

printf("輸入電文\n");
gets(a);

len=strlen(a);

if(len>N)//如果輸入的電文超過定義數組定義長度,截取到數組定義長度
len=N;
//加密
for(i=0;i<len;i++)
{
if(isalpha(a[i]))//如果是字母
{
if(isalpha(a[i]+4))//+4不超出字母範圍
a[i]+=4;
else//超出字母範圍
a[i]=a[i]+4-26;

}
}

printf("加密後的電文\n");
puts(a);
printf("\n");
getchar();
}

② C語言字元串加密 後移四位 並最後輸入Y持續上一個過程 輸入N結束

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

intmain(intargc,char*argv[])
{
chars[50]={""};
scanf("%s",s);
inti;
intlen=strlen(s);
while(1)
{
for(i=0;i<len;i++)
{
intn;
if(s[i]>=65&&s[i]<=90)
{
n=s[i]+4;
if(n>90)
{
n=n-26;
}
s[i]=n;
}
elseif(s[i]>=97&&s[i]<=122)
{
n=s[i]+4;
if(n>122)
{
n=n-26;
}
s[i]=n;
}
}
printf(" %s 繼續嗎?(Y/N):",s);
charc;
fflush(stdin);
scanf("%c",&c);
if(c=='y'||c=='Y')
{
continue;
}
elseif(c=='n'||c=='N')
{
break;
}
}
return0;
}

③ 編寫一個簡單的加密程序:輸入四位整數,按照以下加密演算法處理後,生成加密後的四位整數輸出。 加密演算法:

//原理: a異或b異或b 等於 a

//b就是密碼

# include <windows.h>
int __stdcall wWinMain( __in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in_opt LPWSTR lpCmdLine, __in int nShowCmd )
{
int numInput[4] = {1, 2, 3, 4}; //輸入數據
int key[4] = {6, 2, 9, 8}; //密碼
int enp[4], disenp[4]; //加密與解密後的數據
for(int i = 0; i < 4; ++i)
{
enp[i] = numInput[i] ^ key[i];
disenp[i] = enp[i] ^ key[i];
}
wchar_t strDsp[56];
wsprintf(strDsp, L"原數據%d:%d:%d:%d", numInput[0], numInput[1], numInput[2], numInput[3]);
::MessageBox(::GetForegroundWindow(), strDsp, strDsp, 0);
wsprintf(strDsp, L"加密後%d:%d:%d:%d", enp[0], enp[1], enp[2], enp[3]);
::MessageBox(::GetForegroundWindow(), strDsp, strDsp, 0);
wsprintf(strDsp, L"解密後%d:%d:%d:%d", disenp[0], disenp[1], disenp[2], disenp[3]);
::MessageBox(::GetForegroundWindow(), strDsp, strDsp, 0);
return 0;
}

④ 編寫程序,將一個長度不超過100的字元串加密和解密。密碼規則:用原來的字母後面第4個字母代替原來的字母

首先是賦值錯誤,應該scanf("%s",str);
而不是把str[100]當首地址

其次輸入字元長度不一定是100,所以字元長度也要不確定,所以在判斷的時候應該
char lock(char str[])
{
int i;
for(i=0;i<=100&&str[i]!='\0';i++)
。。。

char unlock(char str[])
{
int j;
for(j=0;j<=100&&str[j]!='\0';j++)
。。。

閱讀全文

與輸入字元加密為後四位相關的資料

熱點內容
南京解壓車要帶什麼 瀏覽:562
天堂2編譯視頻教程 瀏覽:392
伺服器沒有進程怎麼辦 瀏覽:784
阿里雲發布新物種神龍雲伺服器 瀏覽:59
數據結構遞歸演算法統計二叉樹節點 瀏覽:666
ev3怎麼編程 瀏覽:702
gzip壓縮教程 瀏覽:349
解壓模擬例子 瀏覽:984
流媒體伺服器如何實現視頻轉發 瀏覽:57
linux字元串md5 瀏覽:302
支撐突破選股源碼怎麼設置 瀏覽:934
湖南戴爾伺服器維修雲主機 瀏覽:494
解壓到文件夾的視頻都自動隱藏了 瀏覽:569
閱讀器支持php 瀏覽:222
人生需求怎麼解壓 瀏覽:795
pdf列印機找不到 瀏覽:1001
如何同時使用兩個apache伺服器 瀏覽:723
國外php論壇 瀏覽:966
災難是命令 瀏覽:604
linux火狐瀏覽器安裝 瀏覽:71