① C語言編程問題:從鍵盤上輸入一個字元串按照以下規則對其加密。
#include<stdio.h>
#include<string.h>
intmain(){
inti;
chars[80];
printf("請輸入字元串:");
while(scanf("%s",s)==1)
{
printf("加密前:%s ",s);
i=0;//i定義在此處便於第二次運行
while(s[i])
{if(s[i]>='A'&&s[i]<='Z')
s[i]=(s[i]-'A'+3)%26+'A';
elseif(s[i]>='a'&&s[i]<='z')
s[i]=(s[i]-'a'+3)%26+'a';
++i;}
printf("加密後:%s ",s);
printf("請輸入字元串[<Ctrl+Z><ENTER>結束程序]:");
}
return0;
}
② C語言怎麼加密字元
#include<stdio.h>
#include<string.h>
intmain()
{
charstr[]="00000",str2[]="00000",*p=str,*p2=str2;
printf("輸入5個字母:");
while(*p!=0)
{
scanf("%c",p);
if(*p=='
')
continue;
if(*p<'A'||(*p>'Z'&&*p<'a')||*p>'z')//輸入驗證,必須是字母
{
printf("只能輸入字母,請重新輸入
");
p=str;
p2=str2;
fflush(stdin);//輸入有錯重新輸入前清空緩沖區。fflush屬於c擴展函數,正常使用沒問題,如需在linuxggc上使用,考慮多次調用getchar函數來清空
}
else
{
*p2=(*p)+4;
if(*p2>90&&*p2<97)//大寫字母加4,最大位不超出
*p2='A'+(*p2-90)-1;
if(*p2>122)//小寫字母加4,最大位不超出
*p2='a'+(*p2-122)-1;
p2++;
p++;
}
}
printf("原字元串為:%s
加密後的字元串為:%s
",str,str2);
return0;
}
③ 輸入一個字元串作為密碼,程序實現密碼加密.
#include <stdio.h>
#include <stdlib.h>
int main(){
char* str = malloc(21);
char *p = str;
int i ;
//memset(str,0,21);
printf("輸入字元串:");
scanf("%s",str);
while(*str != '