導航:首頁 > 文檔加密 > c語言字母加密向後推4個

c語言字母加密向後推4個

發布時間:2022-03-03 23:52:46

1. C語言編程:要求輸入student,將其加密,每個字母往後移四位,比如e,將其變成i,求高手解答!

摘要 您好,很高興為您解答。

2. 將字母後移4位的c語言函數

可以參考下面的代碼:

#include <stdio.h>

#include <stdlib.h>

void movefour(char *str)

{

int i,j;

char t;

for(i=0;i<4;i++)

{

t=str[strlen(str)-1];

for(j=strlen(str)-1;j>0;j--)

str[j]=str[j-1];

str[0]=t;

}

}

(2)c語言字母加密向後推4個擴展閱讀:

C語言strcat()函數:字元串連接(拼接)

C語言isupper()函數:判斷一個字元是否是大寫字母

C語言isspace()函數:判斷一個字元是否是空白符

C語言isprint()函數:判斷一個字元是否是可列印字元

C語言islower()函數:判斷一個字元是否是小寫字母

C語言ldexp()函數:返回x乘以2的exponent次方(次冪)的值

C語言isalnum()函數:判斷一個字元是否是字母或者數字

3. C語言問題:要將"China"譯成密碼,密碼規律是:用原來的字母後面的第4個字母代替原來的字母。

原題的意思是進行一個輪換,w->a,x->b,y->,z->d,所以是:

#include"stdio.h"

void

main()

{

char

name[5];

int

i;

for(i=0;i<5;i++)

{

printf("請輸入第%d個字母",i+1);

scanf("

%c",&name[i]);

if(name[i]=='v')

name[i]='z';

else

if(name[i]=='V')

name[i]='Z';

else

name[i]=(name[i]+4)%26;

}

for(i=0;i<5;i++)

printf("%c",name[i]);

printf(" ");

}

(3)c語言字母加密向後推4個擴展閱讀:

#include <stdio.h>

int main(){

printf("Hello, World! ");

return 0;

}

程序的第一行#include <stdio.h>是預處理器指令,告訴 C 編譯器在實際編譯之前要包含 stdio.h 文件。

下一行int main()是主函數,程序從這里開始執行。

下一行printf(...)是 C 中另一個可用的函數,會在屏幕上顯示消息 "Hello, World!"。

下一行return 0;終止 main() 函數,並返回值 0。

4. C語言,輸入一個字元串,採用字母後移五位的辦法加密,後面幾個字母加五後需要回到前面

int i,j,k; char temp;
for(j=0;j<m;j++){
temp=w[j];//此處有誤,每次循環時j都比之前+1,但是按你的邏輯此處應該是首字母
for(i=0,k=0;i<=N-1,k<=N-2;i++,k++)
w[k]=w[i+1];

w[N-1]=temp;
}
你的邏輯是這樣:
假如字元串是abcdefgh,要將前三個字母移至末尾,則要經過
1.bcdefgha,在這一步,也就是temp=w[0];
for(i=0,k=0;i<=N-1,k<=N-2;i++,k++)
w[k]=w[i+1];
所達到的;
2.第二步進行之前,字元串是bcdefgha,要將b後移,顯然應該將b存成temp,b後面的前移,
所以第二步依然是
temp=w[0];
for(i=0,k=0;i<=N-1,k<=N-2;i++,k++)
w[k]=w[i+1];
以達到
cdefghab;
3,同樣把c暫存,c後面前移,則獲得最後要得到的字元串defghabc。
所以只需要把我在程序中標出的語句改了就可以運行了。

【另外:在
for(i=0,k=0;i<=N-1,k<=N-2;i++,k++)
w[k]=w[i+1];
此處其實k和i的作用一樣,沒有必要用兩個變數,可合二為一:
for(i=0;i<=N-1,k<=N-2;i++)
w[i]=w[i+1];
追問:
我暗號你寫的寫成這樣子:
int i,k,temp=w[0],j;for(j=0;j<m;j++)
{
for(i=0,k=0;i<N-1,k<=N-2;i++,k++)
{
w[k]=w[k+1];
w[N-1]=temp;

for(i=0,k=0;i<=N-1,k<=N-2;i++,k++) {
temp=w[0];
w[k]=w[k+1];
w[N-1]=temp;
}
}
}

還是沒有改變啊!
追答:
int i,j,k; char temp;
for(j=0;j<m;j++){
temp=w[j];//此處有誤,每次循環時j都比之前+1,但是按你的邏輯此處應該是首字母
for(i=0,k=0;i<=N-1,k<=N-2;i++,k++)
w[k]=w[i+1];
w[N-1]=temp;
}
就應該是
int i,j,k; char temp;
for(j=0;j<m;j++){
temp=w[0];
for(i=0,k=0;i<=N-1,k<=N-2;i++,k++)
w[k]=w[i+1];
w[N-1]=temp;
}

5. 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;
}

6. 用c語言把字元串加密,包括字母和數字,向後偏移三位,需要運用到函數。幫忙改一下錯啊。。

#include<stdio.h>
void sec(char str[]);
void main()
{
char str[10];
int i=0;
printf("input 10 chars:\n");
for(i=0;i<10;i++)
scanf("%c",&str[i]);//<————這里輸入的時候你寫的不對!
sec(str);
for(i=0;i<10;i++)
printf("%c",str[i]);
}
void sec(char str[])
{
int i;
for(i=0;str[i]!='\0';i++)
{
char x=str[i];
if((x>='a'&&x<='z')||(x>='A'&&x<='Z')||(x>='0'&&x<='9'))
x=x+3;
str[i]=x;//<————————這里要把轉換完的x再賦給str[i]
}
}

7. C語言編程:要求輸入student,將其加密,每個字母往後移四位,比如e,將其變成i,求高手解答!謝謝!

是的,就是設置個char數組,比如char student[4]={0};char strtemp[4];
然後將起賦值為你想要的值,這就是加密前,加密的話就:
for(int i=0;i<sizeof(student);i++)
strtemp[i] = student[i]+4;
得到的就是你要的加密後的組合了,解密同樣,直接每個指減4就對了

8. 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();
}

9. c語言:數據加密,加密規則是:將單詞中的每一個字母變成其後的第四個

給你個參考吧:

voidshift4(char*s){
chartemp[256];
for(inti=0;i<strlen(s);i++){
temp[i]=s[i];
}
for(inti=0;i<strlen(s);i++){
s[i]=temp[(i+4)%strlen(s)];
}
}
voidmain(){

char s[] = "abcdefgh";

shift4(s);

cout << s;

}

10. C語言 加密「China",用原來字母後面的第四個字母代替原來的字母。

你的思路不正確,char定義的是變數名,但變數沒有賦值,並不是說變數C的值就是C,如果按你的思路,定義變數要這樣char C=『C',h='h',......很麻煩,建議用下面的方法
#include<stdio.h>
main()
{
char str[]="China";
int i=0;
while(str[i])
{
str[i]=str[i]+4;
i++;
}
printf("%s",str);
}

閱讀全文

與c語言字母加密向後推4個相關的資料

熱點內容
華為筆記本電腦怎麼安裝抖音app 瀏覽:410
阿里雲國際版試用的伺服器怎麼搞 瀏覽:893
java正則表達式工具 瀏覽:158
oa伺服器怎麼設置ftp 瀏覽:8
安卓如何安裝obb 瀏覽:440
QQ聊天記錄journal文件夾 瀏覽:118
蘋果公司雲伺服器地址 瀏覽:85
加密記事本手機 瀏覽:437
汽車壓縮機變頻閥 瀏覽:95
域外伺服器是什麼意思 瀏覽:639
大眾點評伺服器怎麼老卡頓 瀏覽:556
javavector與list的區別 瀏覽:316
java初始化類數組 瀏覽:303
java字元串轉換成json對象 瀏覽:647
android非阻塞socket 瀏覽:358
編譯系統概念 瀏覽:452
天眼通app能做什麼 瀏覽:557
魅族手機怎麼加密圖庫 瀏覽:8
rpa編譯器 瀏覽:572
車載雲伺服器記錄 瀏覽:740