c语言密码代码
1. 悬赏100分 如何用c语言 写一个密码程序
clude "string.h"
//考虑到用数据库文件保存注册信息的话要使用access创建文件并且还要配置数据源,所以我的方法是采用将注册信息保存到文件
//下面是完整的程序:
//登陆检测函数
int login(char *name,char *password)
{
char info[10000];
char *p=info;
FILE *file=fopen("user","r");
int size;
if(file)
{
size=fread(info,1,10000,file);
while(size!=(int)p-(int)info)
{
if(!strcmp(p,name)&&!strcmp(p+strlen(p)+1,password))
{
fclose(file);
return 1;
}
p+=strlen(p)+1;
p+=strlen(p)+1;
}
}
fclose(file);
return 0;
}
//添加注册信息入文件
void save(char *name,char *password)
{
FILE *file=fopen("user","a");
fwrite(name,1,strlen(name)+1,file);
fwrite(password,1,strlen(password)+1,file);
fclose(file);
}
#define PASSWORD "12345" //这里指定你要允许通过的密码,比如12345,将引号里的数字改为你想要的即可
int main()
{
char password[100];
char name[100],c[100],password1[100];
tag1: printf("press 1 to register, or 2 to login\n");//输入1为注册,输入2为登陆
while(1)
{
gets(c);
if('1'==c[0])
{
printf("please enter your name\n");//输入姓名
gets(name);
tag2: printf("please enter your password\n");//输入密码
gets(password);
printf("please enter your password again\n");
gets(password1);
if(strcmp(password,password1))
{
//两次密码不一致,重输
printf("the password you entered is different from the first one,please try again!\n");
goto tag2;
}
printf("register is completed!\n");//注册成功
//下面实现将注册信息加入文件保存
save(name,password);
goto tag1;
}
else if('2'==c[0])
{
tag3: printf("please enter your name:\n");
gets(name);
printf("please enter your password:\n");
gets(password);
if(login(name,password))//如果验证通过,则
{
printf("login successfully!\n");
//这里添加成功登陆后要执行的代码
}
else
{
printf("your name or password doesn't exist!\n");//否则重输
goto tag3;
}
}
else
{
printf("invalid input!press 1 to register, or 2 to login\n");//输入非法,重输
goto tag1;
}
}
return 0;
}
饿,写了我两个小时啊,大哥,分一定要给我啊~~~~~~
2. 跪求一个:c语言密码验证程序的源代码
#include<stdio.h>
#include<conio.h>
#include<string.h>
char password[10]="hunter";
typedef struct
{
char data[6];
int top;
}stacktype;
void initstack(stacktype *s)
{
s->top=-1;
}
void push(stacktype *s,char x)
{
if(s->top==6)
printf( "stack is full");
else
{
s->top++;
s->data[s->top]=x;
}
}
int pop(stacktype *s)
{
if(s->top==-1) return(0);
else s->top--;return(1);
}
char stacktop(stacktype *s)
{
char x;
if(s->top==-10) return(0);
else x=s->data[s->top];return(x);
}
void programme(stacktype *s)
{
char a;
char b[5];
int i,j,c;
printf( "请输入一个六位数的密码,你只有三次机贺晌会:\n");
for(i=0;i<=2;i++)
{
for(j=0;j<=5;j++)
{
c=j;
a=getch();
if((int)a!=8)
{
printf( "*");
push(s,a);
}
else
{
printf("\b \b");
j=c-2;
pop(s);
}
}
for(j=5;j>=0;j--)
{
pop(s);
b[j]=stacktop(s);
}
b[6]='\0';
printf( "\n");
if(strcmp(password,b)==0)
{
printf( "密码正确\n");
break;
}
else
{
printf("密码错误,请再试一次!\n");
continue;
}
}
if(i==3)
printf("禅渗锋密码错误,即刻退出\喊型n");
}
void main()
{
stacktype s;
initstack(&s);
programme(&s);
}
这是个范例,你自己研究研究
3. 【在线等…!!!】用C语言写一个密码程序
//---------------------------------------------------------------------------
#include
<stdio.h>
#include
<string.h>
#include
<ctype.h>
#define
PFE
"pas.dat"
/*保存密码的文件*/
#define
DEFPAS
"123456"
/*初始密码*/
void
setpass(void)
{
FILE
*fp=NULL;
char
pas[20];
printf("是否设置新密码?(Y/N):");
fflush(stdin);
if
(tolower(getchar())=='y')
{
printf("请输入新密码:\
");
scanf("%20s",pas);
fp=fopen(PFE,"wb");
fwrite(pas,sizeof(char),strlen(pas),fp);
fclose(fp);
printf("已经设置新密码,下次请使用新密码登录\
");
}
fflush(stdin);
}
int
main(void)
{
FILE
*pf;
char
pass[20]=DEFPAS,ch[20];
if
(pf=fopen(PFE,"rb"))
{
fread(pass,sizeof(char),20,pf);
fclose(pf);
}
printf("请输入密码:");
scanf("%s",ch);
if
(!strcmp(ch,pass))
{
printf("登录成功\
");
setpass();
printf("欢迎使用本系统\
");
getchar();
}
else
printf("密码错误,登录失败!\
");
return
0;
}
//---------------------------------------------------------------------------
4. c语言星型密码源代码
#include <stdio.h>
#include <conio.h>
#include <string.h>
void main ()
{
char ch[6];
int i,n;
printf("请输入袭迅密码\拍游此n");
for(n=0;n<5;n++)
{
ch[n] = getch();
printf("*");
}
printf("\n");
ch[n] = '\0';
if(0 == strcmp(ch,"55555"))
{
printf("密码正确\n");
}
else
{
printf("密码错误\磨誉n");
}
}
5. 用C语言程序编写用户名密码 程序
#include<stdio.h>
#include<string.h>
void main()
{
int i,flag1,flag2;
char name[20]="lushan",password[10]="困冲123456";
char person[20],password1[10];
for(i=0;i!=3;)
{
printf("拦歼Please input the name:\n");
gets(person);
flag1=strcmp(person,name);
printf("Please input the password:\n");
gets(password1);
flag2=strcmp(password,password1);
if(flag1==0&&flag2==0)
{
printf("Pass successfully!");
break;
}
else
{
printf("You have enter the wrong name or password!\n"汪衡歼);
i++;
}
}
}
6. C语言用c写一个可以验证账号,密码和修改密码的程序
#include <string.h>
struct e
{
char a[10];
char b[10];
}z;
int main()
{ int t=0;
char s[10],d[10];
FILE *p;
void as();
if ((p=fopen("m.txt","r+"))==NULL)
{
p=fopen("m.txt","w+");
t=1;
}
if(t==1)
{
printf("当前没有任何用户\n");
printf("请新建用户名: ");
scanf("%s",s);
printf("为用户设置密码: ");
scanf("%s",d);
strcpy(z.a,s);
strcpy(z.b,d);
fprintf(p,"%s %s",z.a,z.b);
fclose(p);
}
if(t==0)
{
printf("请输入用户名: ");
scanf("%s",s);
fscanf(p,"%s %s",z.a,z.b);
fclose(p);
if (!strcmp(z.a,s))
{
printf("请输入密码:");
scanf("%s",d);getchar();
if(!strcmp(z.b,d))
{ char i;
printf("是否要修改密码?(输入y修改,n退出!)");
scanf("%c",&i);
if(i=='y')
{
printf("请输入修改密码:");
scanf("%s",z.b);
p=fopen("m.txt","w+");
fprintf(p,"%s %s",z.a,z.b);
fclose(p);
printf("修改成功!");
}
}
else printf("密码错误!");
}
else printf("用户名错误");
fclose(p);
}
}
7. 用C语言做一个输入密码程序
以gcc编译器为例,可以分为四步。
第一步是预处理,包括语法检查等工作。
gcc
-p
abc.c
第二步由源程序生产汇编语言代码。
gcc
-s
abc.c
会生成abc.s文件,这个文件里就是汇编代码。
第三步编译器生成目标代码,一个源文件生成一个目标代码。
gcc
-c
abc.c
会生成abc.o
第四步连接器从目标代码生成可执行文件。
gcc
abc.o
目标代码包括机器码和符号表(函数及变量名)。连接器的主要作用是通过符号表在库文件和其他模块中找到在目标代码中引入或未定义的符号(函数及变量名),将几个目标代码合成可执行文件。
8. 如何用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("对不起,密码输入错误! ");
}
9. 帮忙用C语言写一个密码
#include <stdio.h>
#define MAX_LENGTH 128
#define FILE_NAME "pwd.dat"
#define INIT_PWD "123456"
char pwd[MAX_LENGTH+1];
void Init ( void )
{
FILE *fp;
fp = fopen ( FILE_NAME, "r" );
if ( fp == NULL )
{
strcpy ( pwd, INIT_PWD );
}
else
{
fgets ( pwd, MAX_LENGTH, fp );
fclose ( fp );
}
}
void Login ( void )
{
char ch;
char tmp[MAX_LENGTH+1];
int pass = 1;
while ( pass )
{
puts ( "==================================\nPlease input your password!" );
scanf ( "%s", tmp );
pass = strcmp ( tmp, pwd );
}
}
void Edit ( void )
{
puts ( "Please input a new password!" );
scanf ( "%s", pwd );
}
void End ( void )
{
FILE *fp;
fp = fopen ( FILE_NAME, "w" );
if ( fp == NULL )
{
printf ( "Cannot save your password!\n" );
system ( "pause" );
}
else
{
fputs ( pwd, fp );
fclose ( fp );
}
}
int main ( void )
{
Init();
Login();
Edit();
End();
}
10. C语言密码输入代码,哪错了
#include <stdio.h>
#include <conio.h> //getch()函数在这个头文件中定义的
#include <string> //strcmp函数在这个头文件中定义的
#define max 20
int LongOn()
{
int i=0;
char name[max],password[max];
memset(password, 0x00, max);
printf("\nplease put your name: ");
scanf("%s",name);
printf("\nplease put your password: ");
while((i < max) && ((password[i++]=getch()) != '\r'))printf("*"); //注意括号,避免优先级悔困错搏前激误
password[--i]= '\0';
if(!strcmp(name,"wang")&&!strcmp(password,"12345678"))
{
printf("\nsuccess\n");
return 1;
}
else
{
printf("\nerror\n");
return 0;
}
}
void main()
{
LongOn();
system("pause");
} //这里的符号错误,应该用半角的基袜,调整下输入法