A. c语言简单密码破解(密文转明文)
调了半天,楼主真是太粗心了!middle1[]应该这样声明:
char
middle1[]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
最后输出start的时候要注意控制长度,改个for循环就好了!
#include<stdio.h>
#include<string.h>
int
main(void)
{
int
i,j,length,n;
char
temp;
char
middle2[27];
char
start[201],finish[201];
char
middle1[]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
gets(middle2);
gets(finish);
scanf("%d",&n);
length=strlen(finish);
for(i=0;i<25;i++)
{
for(j=i+1;j<26;j++)
{
if(middle2[i]>middle2[j])
{
temp=middle2[i];
middle2[i]=middle2[j];
middle2[j]=temp;
temp=middle1[i];
middle1[i]=middle1[j];
middle1[j]=temp;
}
}
}
for(i=1;i<=n;i++)
{
for(j=0;j<length;j++)
{
if(finish[j]=='
')
{
start[j]='
';
}
else
{
start[j]=middle1[finish[j]-'A'];
}
}
}
for(
i
=
0;i
<
length;++i)
printf("%c",start[i]);
printf("\
");
return
0;
}
/*
ABCDEFGHIJKLMNOPQRSTUVWXYZ
*/
B. 计算机二级C语言(虎贲教育)书背后卡号密码
BMW029-CAD753-PRO127
C. c语言其实很简单学习卡密码
密码一般是你注册的手机号码。
学习卡是一种网络教育与培训类充值卡,一般由各网站分别经营销售。学习卡主要用于对学习网上考研、考博、自考、成考、同等学力考试、各行各业资格认证考试和职称晋升考试,进行在线学习、网上辅导等全方位服务。
密码是一种用来混淆的技术,使用者希望将正常的(可识别的)信息转变为无法识别的信息。但这种无法识别的信息部分是可以再加工并恢复和破解的。密码在中文里是“口令”(password)的通称。登录网站、电子邮箱和银行取款时输入的“密码”其实严格来讲应该仅被称作“口令”,因为它不是本来意义上的“加密代码”,但是也可以称为秘密的号码。其主要限定于个别人理解(如一则电文)的符号系统。如密码电报、密码式打字机。
D. c语言 修改密码初始密码为123456,密码包含数字和字母,数字必须大于2位
#include<stdio.h>
#include<string.h>
#include<ctype.h>
intmain()
{charpsw[21]="123456",t1[21],t2[21];
inti,n=0;
printf("请输入初始密码: ");
do
{gets(t1);
n++;
err=strcmp(t1,psw);
if(err)printf("初始密码错误!请重新输入! ");
}
while(err&&n<3);
if(strcmp(t1,psw))
{printf("密码错误,不能登录! ");
return0;
}
while(n<3)
{while(n<3)
{printf("请输入新密码: ");
gets(t1);
for(i=0;t1[i];i++)
if(isdigit(t1[i]))n++;
if(n<3)
{n=0;
printf("数字必须大于2位! ");
}
}
printf("请再次输入新密码: ");
gets(t2);
if(strcmp(t1,t2)==0)
printf("密码修改成功! ");
else
{printf("二次密码不一致! ");
n=0;
}
}
return0;
}
E. 如何用C语言编写密码程序
1、用一个字符数组来存密码
再用一个字符数组接收你的输入,然后用strcmp
来比较,如果返回0则密码是正确的
2、例程:
#include"stdio.h"
#include"string.h"
intmain()
{
charmima[100]="YuanShi888";
charinput[100]={0};
printf("请输入密码:");
gets(input);
if(strcmp(mima,input)==0)
printf("恭喜你,密码正确! ");
else
printf("对不起,密码输入错误! ");
}
F. c语言编程,提示输入六位密码,密码正确就输出.“欢迎”,不正确就提示“错误,请重新输入”,超过三次
#include<stdio.h>
#include<string.h>
intmain()
{
intn=1;
charpwd[10];
while(1){
printf("请输入密码:");
scanf("%s",pwd);
if(strcmp(pwd,"123456")==0)
break;
if(n<3)
{
printf("错误,请重新输入 ");
n++;
}
else
{
printf("再见 ");
return-1;
}
}
printf("欢迎 ");
return0;
}
G. c语言程序课程设计 用户密码设置 急求!!!!!!!!!!!
- -|
这么多问题才10分...
给你一个密文输出的程序好了..
其他自己想.
#include <stdio.h>
main()
{
char str[9]; //密码串长9为
inputPW(str,8); //有效密码长为8 最后一位要放\0 结束符的!
printf("\n密码为: %s",str);
}
inputPW(char * s,int len) //自己写的密码输入的函数
{
int i;
fflush(stdin); //清输入流 跟flushall()类似
for(i=0; ;i++)
{
s[i]=getch();
if(s[i]==13) //输入结束 不能用=='\n'来判断!!
//因为对于回车来说getchar()='\n'=10;而getch()=13 !='\n' 这个要知道!
break;
if(s[i]==8 && i>0) //如果用户按退格键 并且要有格可退时候
{
printf("\b \b"); //显示退一格
i=i-2; //输入数据退2(因为for循环体会加1 所以实际就是退了1)
continue;
}
if(i==len) {i--; continue;}
printf("*");
}
s[i]='\0'; //末尾补\0 所以该密码实际有效长度为i-1;定义有效长为len 实际定义的串长为len+1
}
H. C语言输入密码密文怎么弄 课程设计,学生成绩管理系统
跟你要求差不多,你可以再加上些功能,有问题hi我,交流下~
#include <conio.h>
#include <stdio.h>
#include <string.h>
void main()
{
char pass[]="123456";//假设密码长度是6
char str[10]={0},ch;
int i=0,n=strlen(pass);
while(n--)
{
ch=getch(); //读取字符,不显示
if(ch!='\n') //这边可以加上一些限制,如字符类型,退格等
{
putchar('*');
str[i++]=ch;
}
}
getchar(); //读取回车键
str[strlen(pass)]='\0';
if(strcmp(str,pass)==0)
printf("登录成功\n");
}
I. c语言密码
用什么替换?
暂时用小写加移位取?比如A加密成c,B加密成d,就是大写变小写后位置发生变化。
#include <stdio.h>
#include <string.h>
#include <ctype.h>
void EncodeString(char *str,int key)
{
int length,i;//length为传入字符串长度,i用作循环计数器
length=strlen(str);
for(i=0;i<length;i++)//对字符串中的每个字符依次进行加密
{
if(isupper(str[i]))//对大写字母加密
{
str[i]+=key%26;
if(str[i]>'Z')
{
str[i]-=26;
}
else if(str[i]<'A')
{
str[i]+=26;
}
}
else if(islower(str[i]))//对小写字母加密
{
if(str[i]+key%26<128){
str[i]+=key%26;
if(str[i]>'z')
{
str[i]-=26;
}
else if(str[i]<'a')
{
str[i]+=26;
}
}
else{str[i]-=26;str[i]+=key%26;}
}
}
}
void main()
{
char arr[50],buffer;//arr[50]用来接收字符串信息,buffer用来接收缓冲区中的回车
int key;//key为加密秘钥
printf("This program encodes messages using a cyclic cipher.
");
printf("To stop, enter 0 as the key.
");
while(1)//程序一直运行,直到输入密钥0为止
{
printf("Enter the key: ");
scanf("%d",&key);
scanf("%c",&buffer);
if(0==key)
{
break;//输入密钥为0,则退出程序
}
printf("Enter a message: ");
scanf("%s",arr);
scanf("%c",&buffer);
EncodeString(arr,key);
printf("Encoded message: %s
",arr);
}
}
J. c语言如何输入密码
在C语言中不像VC与VB等可视化的编译系统,他好像没有提供这种函数)
有一种方法可以大概的实现它。用for 语句和getch( );putchar (‘*’);来实现的,而getch 不分区另ENTER和BACKSPACE等特殊键,不好控制它的结束。因此只有避过问题强行规定密码必须是8位的,但在输入密码时仍然不允许用户输入ENTER和BACKSPACE等特殊键。
或者自己写个函数,使用getch读取键盘输入,只接收那些密码允许的字符。没接受到一个合法的字符就再屏幕上输出一个“*”