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

輸入字元加密為後四位

發布時間: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++)
。。。

閱讀全文

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

熱點內容
python中numpy模塊安裝 瀏覽:356
安卓虛擬機linux 瀏覽:567
安卓怎麼分享五g網路 瀏覽:671
什麼型號的板子能上伺服器內存 瀏覽:397
androidapk圖標設置 瀏覽:42
最早提出分數運演算法的著作 瀏覽:922
安卓郵箱怎麼保存照片 瀏覽:269
hdfspythonapi 瀏覽:851
qt如何搭建web伺服器 瀏覽:58
程序員紅包演算法 瀏覽:792
亞馬遜安全的更換雲伺服器 瀏覽:728
伺服器線程數怎麼設置 瀏覽:605
考研詞彙紅寶書2019pdf 瀏覽:981
如何利用安卓手機wifi修改密碼 瀏覽:373
辭海分冊pdf 瀏覽:935
安卓系統頁面怎麼調 瀏覽:775
壓縮文件的用法 瀏覽:34
如何用瀏覽器訪問伺服器地址 瀏覽:207
soft編譯器 瀏覽:113
三軸車床的編程指令 瀏覽:71