c语言完成注册和登录(c语言实现登录注册)

本篇文章给大家谈谈c语言完成注册和登录,以及c语言实现登录注册对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

1、c语言程序,登录注册系统2、用户注册及登录管理 编写c语言程序,实现软件用户登录、注册功能。3、如何用C语言编程实现用户登录4、c语言编写注册与登录的程序5、如何用C语言编写一个程序可以进行用户登录,注册。还可以记录用户的年龄,性别信息,用于后续统计。6、C语言编程:实现用户的注册和登录

c语言程序,登录注册系统

提供一个思路,将txt文件中的内容读取到一个数组中,这个数组中的数据应该是你自定义的结构体。然后将该用户名与数组中的内容循环比较。如果发现有相等的(即已存在),则注册失败!给个例子:

#include stdio.h

int main()

{

    int v[100];//开一个足够大的数组。

    int i = 0, j;

    FILE *fp;//文件指针

 

    fp = fopen(“in.txt”, “r”);//以文本方式打开文件。

    if(fp == NULL) //打开文件出错。

        return -1;

    while(fscanf(fp, “%s”, v[i]) != EOF) //读取数据到数组,直到文件结尾(返回EOF)

        i++;

    fclose(fp);//关闭文件

 

    char registerName[20];

    for(j = 0; j  i; j ++)//循环输出数组元素。

    {

        if (strcmp(registerName, v[i].name) == 0)

        {

            printf(“该用户名已存在!\n”);

            break;

         }

    }

    return 0;

}

大概就这样的。具体的细节你自己调试。

用户注册及登录管理 编写c语言程序,实现软件用户登录、注册功能。

/ /你看到自己专门为你烫一下注册和登录系统

1新用户注册

2登录

3退出

1

注册帐号:

请输入您的姓名:

KA西瓜

请输入您的密码:!

注册成功

注册和登录系统

1新用户注册

2登录

3退出

2

登录帐号:

请输入用户名:

KA西瓜

请输入密码:

确定登录成功

欢迎回来,KA西瓜

按任意键继续

! #包括中

#包括的

无效新用户注册(); / /用户注册功能

无效登录(); / /用户登录功能

的main()

{

整数selectNum;

的printf(“\ nRegistered和登录系统\ n \ n已”);

printf(“请1新用户注册\ N”);

printf(“请2登录\ N”);

printf(“请3退出\ n”);

的scanf(“%d个”,&selectNum);

开关(selectNum)

{

案例1:新用户注册();

突破;

案例2:登录();

突破; 案例3:printf(“请!退出程序\ n”);

出口(1);

突破;

无效新用户注册()

{

文件*计划生育;

字符Linedata [50] = {0},用户[20],通[20];

计划生育=打开(“data.dat文件”,“在”);

printf(“请注册帐号:\ n”);

printf(“请输入你的姓名:\ n”);

FFLUSH(标准输入);

得到(用户);

printf(“请输入您的密码:\ n”);

FFLUSH(标准输入);

得到(通行证);

的strcpy(Linedata,用户);

的strcat(Linedata,“,”);

strcat的(Linedata,通行证);

strcat的(Linedata,“\ N”;);

FPUTS(Linedata,FP);

FCLOSE(FP);

printf(“请!注册成功\ n”);

的main();

}

无效登录()

{

文件*计划生育;

整型发现= 0;

用户的char [20],通[20],Userstrcat [50] = {0};

字符使用用户数据[50] = {0};

计划生育=打开(“data.dat文件”,“R”);

printf(“请登录帐号:\ n”);

printf(“请输入用户名:\ n”);

FFLUSH(标准输入);

得到(用户);

printf(“请输入密码:\ n”);

FFLUSH(标准输入);

得到(通行证);

的strcpy(Userstrcat,用户);

的strcat(Userstrcat,“,”);

strcat的(Userstrcat,通行证);

strcat的(Userstrcat,“\ N”);!

而(的feof(计划生育))

{

与fgets(使用用户数据,19,FP);

如果(STRCMP(保留使用者,Userstrcat)== 0)

{

printf(“请确定登录成功\ n!”);

printf(“请欢迎回来,%s的\ n!”,用户);

发现= 1;

突破;

如果

(find!){

的printf(“用户名或密码不正确\ n”);

FCLOSE(FP);

}

如何用C语言编程实现用户登录

需要id和密码匹配就行了吧?

注册时让用户输入id,将其存储到一个文件中(如data.in),紧接着输入密码,存到id之后;

再次登录时,用户输入id,判断id长度,在文件的每一行搜索同一长度的字符看是否匹配,如果匹配,判断密码是否一致即可;

如果还有疑问就补充提问吧,希望回答对你有帮助!

c语言完成注册和登录(c语言实现登录注册)

c语言编写注册与登录的程序

希望对你有所帮助

#includestdio.h

#includestdlib.h

#includestring.h

#includectype.h

#define N 100

struct user

{

int user_id;

char user_name[19];//最大18位

char password[13];//最大13位

char like[255];

char sign[255];

};

/*

* 验证用户名长度是否合法

*/

int length_user_name(char *p)

{

int l;

l=strlen(p);

if(l18||l1)

{

return 0;

}

else

return l;

}

/*

* 判断用户名是否有效

*/

int valid_user_name(char *p)

{

int i=0;

int len = strlen(p);

if((*p = ‘a’ *p = ‘z’) || (*p = ‘A’ *p =’Z’)) //判断首字符是不是字母

{

for(i = 0; i len; i++)

{

if(!(p[i] == ‘_’ || (p[i] = ‘a’ p[i] = ‘z’) || (p[i] = ‘A’ p[i] =’Z’)

||(p[i] =’0′ p[i] = ‘9’))) //判断后面字符是否有效

return 0;

}

return 1;

}

else

return 0;

}

/*

* 判断用户名是否有效

*/

int is_username_valid(char *p)

{

if((*p = ‘a’ *p = ‘z’) || (*p = ‘A’ *p =’Z’))

{

p++;

while(*p)

{

if(!(isalpha(*p) || *p == ‘_’ || isdigit(*p)))

return 0;

p++;

}

return 1;

}

else

{

return 0;

}

}

/*

* 密码长度有效性验证

*/

int length_password(char *p)

{

int len;

len = strlen(p);

if(len6||len12)

{

return 0;

}

else

return len;

}

/*

* 密码的有效性验证

*/

int is_password_valid(char *p)

{

int i=0;

for(;*p != ‘\0’; p++)

{

if(!( (*p = ‘a’ *p = ‘z’) || (*p = ‘A’ *p =’Z’)

||(*p =’0′ *p = ‘9’))) //判断字符是否有效

return 0;

}

return 1;

}

int two_password_valid(char *p1,char*p2)

{

if(strcmp(p1,p2)==0)

return 1;

else

return 0;

}

/*

* 完成注册功能

*/

int user_register(struct user *ptr_user,int size)

{

char password[13];

char repassword[13];

if(size==N)

{

puts(“注册人数以满!”);

return 0;

}

printf(“请输入注册姓名:”);

fflush(stdin);

gets(ptr_user[size].user_name);

if(!(length_user_name(ptr_user[size].user_name)valid_user_name(ptr_user[size].user_name)))

{

printf(“您输入的姓名无效,用户名在1-18之间,首字符为字母,后面必须为字母,数字或下划线!!!”);

return 0;

}

printf(“请输入注册密码:”);

fflush(stdin);

gets(password);

printf(“请再次输入注册密码:”);

fflush(stdin);

gets(repassword);

if(!two_password_valid(password,repassword))

{

printf(“\n两次输入的密码不一致!”);

return 0;

}

else

{

strcpy(ptr_user[size].password,password);

}

if(!(length_password(ptr_user[size].password)is_password_valid(ptr_user[size].password)))

{

printf(“您输入的密码无效,密码应在6-12之间,密码只能包含字母和数字!!!”);

return 0;

}

printf(“请输入您的爱好:”);

fflush(stdin);

gets(ptr_user[size].like);

printf(“请输入您的个性签名:”);

fflush(stdin);

gets(ptr_user[size].sign);

printf(“您的编号为:%d,这将是您的登陆帐号.”,ptr_user[size].user_id=10000+size);

return 1;

}

/*

* 如果登陆成功则返回第i+1个用户的信息,否则返回0

*/

int is_my_user(struct user *p,int size)

{

int i;

int zhanghu;

char mima[15];

printf(“请输入您的帐号: “);

scanf(“%d”,zhanghu);

fflush(stdin);

printf(“请输入您的密码: “);

gets(mima);

for(i=0;isize;i++)

{

if((zhanghu == p[i].user_id)(strcmp(mima,p[i].password)==0))

{

return i + 1;

}

}

return 0;

}

void display_user(struct user u)

{

printf(“\n你的帐号是:%d”,u.user_id);

printf(“\n你注册姓名是:%s”,u.user_name);

printf(“\n你的爱好:%s”,u.like);

printf(“\n你的个性签名:%s”,u.sign);

}

void update_password(struct user *ptr_user,int size)

{

char mima1[13],mima2[13];

int i = is_my_user(ptr_user,size);

if(i)

{

i–;

}

else

{

printf(“\n帐号密码不存在!”);

return;

}

printf(“请输入新密码: “);

scanf(“%s”,mima1);

printf(“请再次输入新密码: “);

scanf(“%s”,mima2);

if(two_password_valid(mima1,mima2) length_password(mima1) is_password_valid(mima1))

{

strcpy(ptr_user[i].password,mima1);//完成新旧密码的调换

printf(“\n您的的密码修改成功!”);

}

else

printf(“\您的密码修改失败!”);

}

//显示菜单

int show_menu()

{

int choice;

printf(“\n1.注册”);

printf(“\n2.登陆”);

printf(“\n3.修改密码”);

printf(“\n4.退出”);

printf(“\n请选择1-4\n”);

scanf(“%d”,choice);

return choice;

}

int main()

{

struct user our_users[N];

int count = 0;

int current_user;

while(1)

{

switch(show_menu())

{

case 1:

if(user_register(our_users,count))

{

count++;

printf(“\n注册成功!”);

}

break;

//注册

case 2:

if((current_user = is_my_user(our_users,count)))

{

printf(“\n登陆成功!”);

display_user(our_users[current_user – 1]);

}

else

printf(“\n登陆失败!”);

break;

//登陆

case 3:

update_password(our_users,count);

break;

//修改密码

case 4:

exit(1);

break;

//退出

default:

printf(“请正确输入”);

}

}

return 0;

}

如何用C语言编写一个程序可以进行用户登录,注册。还可以记录用户的年龄,性别信息,用于后续统计。

将信息记录在一个access的表中

登录,记录,注册,就是对表的操作。

C语言编程:实现用户的注册和登录

模拟用户注册和登陆可以用文件来保存用户名和密码。注册就是向文件里写,用if判断两次密码是否一致。连续三次,可以有一个变量,每次输入加一,变量大于三就提示登陆不成功。用户名不对,那你就把你输入的用户名和文件里的用户名是否一致。

关于c语言完成注册和登录和c语言实现登录注册的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年3月30日 13:28:29
下一篇 2024年3月30日 13:34:39

相关推荐

  • c语言改写模式,c语言实现修改功能

    c语言程序修改? 1、这个程序有4个错误,我都加粗了,第一个是m没有赋初值,第二个是while表达式中的ch=getchar()需要括号括起来,第三个是m=m*10+ch-0中的0也需要用单引号括起来,第四个是第2个while中为m!=0。 2、define容易造成误会,因为不符合一般的编程习惯,false 0, true 1;scanf放在你的那个地方是达…

    2024年5月23日
    3900
  • c语言控制代码的换码序列,c语言交换代码

    求C语言编程大神解答一下下面这个编程代码? k==5,用5去除125余0,所以r=125%5中r为0。由于!0为1,所以执行while循环体:先打印出5(k的值),再n=n/k==125/5=25;由于251则再打印出*号。这一循环结果输出是5*。 下面是我的代码,三个函数分别对应三个问题。 在实现基本要求的前提下,拓展了可以从键盘输入的功能,以下为各题代码…

    2024年5月23日
    5600
  • c语言扫描io脚状态,c语言端口扫描

    求51单片机的上升沿和下降沿C语言检测程序列子,端口就是普通IO口。 上升沿触发是当信号有上升沿时的开关动作,当电位由低变高而触发输出变化的就叫上升沿触发。也就是当测到的信号电位是从低到高也就是上升时就触发,叫做上升沿触发。 单片机怎么计算1s内下降沿的个数的C语言程序或者计算两个下降沿的时间(检测脉冲频率)计算1s内下降沿的个数方法是,一个定时器设置定时1…

    2024年5月23日
    4400
  • c语言mallloc使用的简单介绍

    C语言中使用malloc必须加#includemallo.h? 1、在C语言中使用malloc函数进行动态内存分配。malloc的全称是memory allocation,中文叫动态内存分配。原型:extern void malloc(unsigned int num_bytes);功能:分配长度为num_bytes字节的内存块。 2、你可以看一下C语言那本…

    2024年5月23日
    4400
  • c语言三位小数,C语言三位小数

    怎样用C++语言输出精确到小数点后三位的数? 1、用C++语言输出精确到小数点后三位的数,可以参考下面给出的代码:coutsetiosflags(ios:fixed)setprecision(3)。其中 setiosflags中set是设置的意思。ios是iostream的缩写,即输入输出流。flags是标志的意思。 2、要精确到小数点后若干位,则数据类型为…

    2024年5月23日
    7300
  • c语言21点游戏,二十一点游戏代码c语言

    如何使用C语言编写简单小游戏? 1、数学知识:长方形的面积S=a*b 长方形周长L=2*(a+b)其中a b分别为长方形的宽和高。算法分析:长方形面积及周长均依赖于宽和高,所以先要输入宽高值,然后根据公式计算,输出结果即可。 2、/*也不知道你是什么级别的,我是一个新手,刚接触编程语言,以下是我自己变得一个小程序,在所有c语言的编译器(vc++0、turbo…

    2024年5月23日
    6400
  • c语言当中的null,C语言当中的符号

    C/C++中,NULL和null的区别是什么? nul 和 null要看编译器,不同的编译器有所区别。 所以C或者C++中都使用一个特殊定义NULL表示无效值,其本质就是未定义具体数据类型的0值。 null是是什么都没有的意思。在java中表示空对象。 本意是“空的;元素只有零的”意思。计算机中通常表示空值,无结果,或是空集合。\x0d\x0a在ASCII码…

    2024年5月23日
    4500
  • 包含c语言对txt文件命名的词条

    如何在C语言编程里面修改源文件名字 如果你是在WINDOWS的话,简单了,随便用个编辑器,比如记事本,然后写c源程序,保存到你想要保存的位置。如果你在DOS下,可以用edit,写好以后,按alt键,选择文件菜单,然后保存。 用open打开文件,注意操作模式使用“修改”或者“添加” 用write或者fprintf向文件中写入你的内容。 用close关闭文件。 …

    2024年5月23日
    4900
  • 学c语言编程,学c语言编程用什么软件

    编程开发必须要学C语言吗? 1、要学习。编程开发的学习内容主要包括c语言、python和c+语言。C语言作为一种简单灵活的高级编程语言,它是一个面向过程的语言,一般是作为计算机专业的基础入门语言课程。 2、C语言。对于刚接触编程的人来说,先学习C语言是非常重要的。C语言可以说是是计算机编程语言的鼻祖,其他的编程语言几乎全是由C语言变化衍生出来的。 3、不需要…

    2024年5月23日
    3500
  • c语言用string定义字符串,c语言中用string类型来处理字符串类型

    C++怎样定义定义字符串 1、第一是字符数组来表示字符串。用下面的语句声明:char a[10];C语言中字符数组与字符串的唯一区别是字符串末尾有一个结束符\0,而字符数组不需要。 2、在C中定义字符串有下列几种形式:字符串常量,char数组,char指针 字符串常量 即:位于一对双括号中的任何字符。双引号里的字符加上编译器自动提供的结束标志\0字符,作为 …

    2024年5月23日
    4300

发表回复

登录后才能评论



关注微信