c语言登录系统
‘壹’ c语言设计用户登录系统,在登录界面中,如果第一次密码错误,第二次明明输入密码正确为什么还是显示错误
请把原码全部贴出来,这个截图太模糊。
我从模糊的图片中,看到类似fread的字样。那么你的账户密码信息是从一个文件中读取出来。
那么:
一、检查你文件中的原始数据是否有写错。
二、用于存储的变量空间是否够存储全部读取的数据。
三、对一个文件多次读写后,文件指针不在初始位置,确认是否需要fseek设置文件指针初始位置。
四、检查fopen是否执行成功。比如:多次fopen同一个文件,但前一次没有用fclose关闭文件流。
‘贰’ 用C语言编写一个学生管理系统。
学生信息管理系统
#include<stdio.h>
#inelude<stdlib.h>
#include<stnng.h
#define BUFLEN 100
#define LEN 15
#define N 100
#strucet record
char codc[LEN+I J;
char name[LEN-1];
int age:
char sex 13l:
char timc[1.KN-I J;
char add[301;
char tcl [l.EN+1 J:
char mail[30]:
}stu[N]:
int k=1.n,m.
void readfilcO;
void seekO;
void modify(;
void insert();
void del();
void display(;
void save();
void menu(;
int main(
{
While(k)
menu();
system("pause");
一℃himl 0:
}
void help()
{
printf(" nO.欢迎使用系统帮助, );
printf(" 1.进入系统后,先制新学生信息,再查询: ’);
printf(" 2.按照菜单提示键入数字代号
printf(" 3. 增加学生信息后,切记保存按;.n”
printf(" 4. 谢谢您的仗用! ");
}
void n:adlilcO
r
r
char *p-"studcnt.txt'
FILE *fp,
hit i-0;
if ((fp=fopen("studcnt.txt","r" ))`=NULL)
{
printf("Open file %s error' Strike any key to exit! P);
system("pause");
exit(0);
}
while(fscanf(fp,"%s 0os0od0,os 0os %s %s 0os",stu[i].code,stu[i1.name,&stu(i1.age,
stu[i].sex,stuLiJ.time,stuLiJ.add,stu[iJ.tel.stu [iJ.mail)"==8)
{
i++;
i-i;
}
char codc[LEN+1 J;
char name[LEN-1 ];
nit age;
char sex [3I;
char timc[LEN-I J;
char add[30];
char tcl[LEN+I I;
char mail[30J;
)stu[N];
int k=1.n,m;
void readfilcO;
void seek();
void modify();
void insert();
void delO;
void display();
void save();
void menu();
int main()
{
while(k)
menu();
systcm("pause");
return 0:
}
void help()
{
printf(" nO.欢迎仗用系统帮助, ");
printf(" }n1.进入系统后,先刷新学生信息,再查询: );
printf("in2.按照菜单提示键入数字代号加 );
printf("1n,. t}加学生信息后,切记保存按钮 ”
printf("'nd. i$:41您的使用 );
}
void readfile()
{
char *p-"studcnLtxt";
FILE*fp
int i=0;
if ((fp=fopcn("student. tx t","r'' )卜=NULL)
{
printf("Open file %s error' Strike any key to exit!".p);
systcm("pause");
exit(0);
}
i++;
i=i;
}
printf("请选择菜单编号:’’);
scanf("%d",&num);
switch(num)
{
case 0:help();break;
cast 1:readflic();break;
case 2:seek();break;
case 3:modify();break;
case 4:insert();break;
case 5:del();break:
case 6:display();break;
case 7:savc();break;
case 8:k=0,break:
defaalt:prinf(”请在一8之间选择 "):
}
}
拓展资料
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
‘叁’ c语言登录系统
#include<stdio.h>
#include<string.h>
#include<stdlib.h>//增加return的库函数
intlogin()
{
charsecercode[6];
intnumber=3;
printf("
");
printf(" **********欢迎使用管理系统**************");
printf("
");
scanf("%s",secercode);
while(number>0)
{
if(strcmp(secercode,"88888888")==0)
returnEXIT_SUCCESS;
//while语句里面的结束循环用break是不对的
else
{
number--;
if(number<=0)break;
printf(" 还有%d次机会
",number);
printf("
请输入密码:");
scanf("%s",secercode);
}
}
if(number>0)return1;
elsereturn0;
}
mainMenu()
{
printf("密码正确
");
}
main()
{
if(login()==0)return1;
do
{
mainMenu();
}while(1);
}
‘肆’ c语言编写,自定义一个函数,要求如下功能:判断系统的登录账号密码是否正确,并输出登录结果
是三种不同的函数验证登陆吧,check1、check2、check3三类函数分别如下:
void check1()输入输出功能全部在函数完成;
void check2(name,pass)输入在main中传入函数进行判断输出;
int check3(name,pass)输入输出均在main函数完成,函数只做判断返回结果。
#include "stdafx.h"
#include <iostream>
#include <string>
void check1()
{
char name[10], pass[10];
printf("请输入账号和密码: ");
scanf_s("%s%s", name, 10, pass, 10);
if (!strcmp(name,"admin")&&!strcmp(pass,"123"))
printf("账号密码正确! ");
else
printf("账号或密码错误! ");
}
void check2(char *n, char *p)
{
if (!strcmp(n, "admin") && !strcmp(p, "123"))
printf("账号密码正确! ");
else
printf("账号或密码错误! ");
}
int check3(char *n, char *p)
{
if (!strcmp(n, "admin") && !strcmp(p, "123"))
return 1;
else
return 2;
}
int main()
{
char name[10], pass[10];
check1();
printf("请输入账号和密码: ");
scanf_s("%s%s", name, 10, pass, 10);
check2(name, pass);
printf("请输入账号和密码: ");
scanf_s("%s%s", name, 10, pass, 10);
if(check3(name,pass)==1)
printf("账号密码正确! ");
if(check3(name,pass)==2)
printf("账号或密码错误! ");
system("pause");
return 0;
}
‘伍’ C语言用户登录系统账户密码比对
#include<stdio.h>
#include<string.h>
typedefstructaccount{
charname[32];
characc[16];
charpsw[16];
}Acc;
//data是结构体数组,filename是文件绝对地址,n保存读入的结构体数量
voidGetDataFromTxt(Acc*data,constchar*filename,int*n)
{
FILE*fp=fopen(filename,"r");
if(NULL==fp){
printf("Openfilefailedornothisfile!
");
return;
}
inti=0;
while(!feof(fp))
{
fscanf(fp,"%s%s%s",data[i].name,data[i].acc,data[i].psw);
i++;
}
*n=i;
}
intmain()
{
inti,n;
Accdata[100];
//获取数据
GetDataFromTxt(data,"E:\secret.txt",&n);
printf("n=%d
",n);
printf("姓名账号密码
");
for(i=0;i<n;++i)
printf("%-4s%-16s%-10s
",data[i].name,data[i].acc,data[i].psw);
//登录示例
putchar('
');
characc[16],psw[16];
do{
//这里只是粗略地写了一个
//具体的账号错误或者密码错误自行发挥
printf("请输入账号:");
scanf("%s",acc);
printf("请输入密码:");
scanf("%s",psw);
for(i=0;i<n;++i)
{
if(strcmp(acc,data[i].acc)==0&&strcmp(psw,data[i].psw)==0){
printf("登陆成功!
");
break;
}
}
if(i==n){
printf("账号或密码不正确!请重新输入!
");
}else{
break;
}
}while(1);
printf("Byebye!!!
");
return0;
}
‘陆’ 多用户登录系统C语言程序
#include<stdio.h>
#include<stdlib.h>
#include"string.h"
#include"windows.h"
inttotal=0;
structu_p
{
charuser[20];
charpass[20];
}s[50];
voidread()
{
total=GetPrivateProfileInt("INFO","count",0,"d:\Info.dat");
inti;
chart[5]={"