简易的用户账号注册和登录验证程序(1)

用户登录认证程序 初识python时,练习写的小代码,如有建议,欢迎留言! 阅读详情
#include <stdio.h>
#include <string.h>
//用户登录验证系统

struct log                            //定义log结构用于存储用户账号和密码信息 
{
	char name[15];                  
	char password[10];
};
void logging(struct log person);      //登录函数 
void regis(struct log person);        //注册函数 
void jiami(char*p);                   //密码加密函数 
int main()
{
	int choice;                    //操作序号 
	FILE *fp;                      //定义文件指针 
	struct log person;
	do{
		printf("输入操作对应序号:1.登录 2.注册 3.退出\n");
		scanf("%d",&choice);
		if ((fp=fopen("logging.txt","r"))==NULL && choice==1)       //当没有一个用户注册时,不能进行登录操作 
		{
			printf("尚未有用户注册,需要提前注册\n");
			choice=4;
		} 
		switch (choice)
		{
			case 1:logging(person);break;
			case 2:regis(person);break;
			case 3:break;
			default:break;
		}
	}while(choice!=3);
	return 0;
} 

void logging(struct log person)
{
	FILE*fp;
	char s[30];                      //用于储存从文件中读取的已有的用户账号和密码信息           
	char loginfo[30];                //用于储存用户输入的账号和密码信息 
	int flag=1;                      
	printf("请输入账号:\n");
	scanf("%s",person.name);
	printf("请输入密码:\n");
	scanf("%s",person.password);
	jiami(person.password);	
	strcpy(loginfo,person.name);
	strcat(loginfo," ");
	strcat(loginfo,person.password);
	strcat(loginfo,"\n");
	if ((fp=fopen("logging.txt","r"))==NULL)
	{
		printf("登录失败\n");
	}else
	{
		while (!feof(fp))           //一直循坏到文件尾 
		{
			fgets(s,30,fp);
			if (strcmp(s,loginfo)==0)     //如果账号和密码信息同时符合,则登录成功 
			{
				printf("登录成功\n");
				flag=0;
				break;
			}
		}
		if (flag==1) printf("用户名或密码不正确\n");        //否则登录失败 
	}
	if (fclose(fp))
	{
		printf("关闭文件失败");
	}
} 

void regis(struct log person)
{
	FILE*fp;
	int flag;
	char s[30];                     //用于储存用户输入的账号和密码信息 
	char pername[15];               //用于储存从文件中读取的账号信息 
	char perpassword[10];          //用于储存从文件中读取的密码信息 
	do {
		flag=0;
		printf("请输入新账号:\n");
		scanf("%s",person.name);
		printf("请输入新账号的密码:\n");
		scanf("%s",person.password);
		jiami(person.password);
		if ((fp=fopen("logging.txt","r"))==NULL)      //防止用户名被重复注册 
		{
			printf("首次注册\n"); 
		}else
		{
			fscanf(fp,"%s %s",pername,perpassword);
			while(!feof(fp))
			{
				if (strcmp(pername,person.name)==0)
				{
					printf("用户名已存在\n");
					flag=1;
				}
				fscanf(fp,"%s %s",pername,perpassword);
			}
			fclose(fp);
		}
	} while(flag==1);
	strcpy(s,person.name);
	strcat(s," ");
	strcat(s,person.password);
	strcat(s,"\n");
	if ((fp=fopen("logging.txt","a"))==NULL)       //如果注册文件不存在 
	{
		if ((fp=fopen("logging.txt","w"))==NULL)    //新建注册文件 
		{
			printf("注册失败\n");
		}else
		{
			if(fputs(s,fp)==EOF)
			{
				printf("注册失败\n");
			}
		}
	}else
	{
		if(fputs(s,fp)==EOF)
		{
			printf("注册失败\n");
		}else
		{
			printf("注册成功\n");
		}
		
	}
	if (fclose(fp))
	{
		printf("关闭文件失败");
	}
}

void jiami(char*p)             //对密码进行加密 
{
	for (;*p!='\0';p++)
	{
		*p=*p^15;
	}
}

用Python基础创建一个简单的注册登录系统 在学完Python基础后,是不是有一点想法去做一点好玩的程序呢?如果想可以看看这个注册登录系统,会带给你一些思路。 大家都对登录注册系统司空见惯了吧,我们周围的许多东西都需要登录注册系统,例如很受大众使用的app:微信,QQ等。那么难有想法去写一个自己的登录系统吗。让我们继续往下看。 首先,我们需要使用的东西有Python解释器,这里我使用的是pycharm。 然后,准备好之后我们可以一步一步开始使用所学的基础知识进行编写。大家应该都知道,注册登录系统包含了注册、登录和退出选项。那思路就出... 阅读详情

相关推荐

企业微信登录功能和注册

1.先在企业微信注册 https://work.weixin.qq.com/wework_admin/register_wx?from=sem_baidu&keyword=brand&derivative=0012200008 拿到corpid 企业ID,和corpsecret 应用的凭证密钥 ****要求配置的授权回调域,必须与访问链接的域名完全一致 内嵌到网页中去: ...

weixin_43946245的博客 6497

用户验证密码登录

用户验证密码登录 1、密码应该是一个字符串,所以使用字符型数组存放 2、比较字符串是否相同不能直接用== 需要使用strcmp(a, b)来判断,注意,strcmp在相等的时候返回的是0 #include <stdio.h> int main() { int i = 0; char keyword[20]; //定义字符型数组存放初始密码 char word[20]; ...

Mmonster23的博客 1313

Django实战【三】—用户登录、注册实现

一、项目前端模板的套用 1.为什么使用前端模板 因为我们开发ObCRM系统使用的是Django项目,而我们知道,Django框架是一个全面的重量级的框架,并不是全后端分离的,所以涉及到的页面需要我们用到前端的知识,但是我们并不是专业的前端工程师,很多页面的搭建对我们说还是有点吃力。 其实在很多实际工作中开发,前端页面都是通过网络上寻找相应的模板,这样就可以避免在前端样式上调整的时间浪费,我们只需要继承别人写好的模板文件来快速开发自己的前端页面,专心投入自己的后端开发代码中。 2.admin前端模板 刚我们说

饶一熊的博客 2747

2023年全国职业院校技能大赛-信息安全管理与评估-赛题 3

2023年全国职业院校技能大赛-信息安全管理与评估-赛题 3

君逍遥o 3371

python写简单的注册登录,用python写注册登录界面

看看我们本节动过哪些代码文件。

2301_81895257的博客 1111

稳压二极管选型指南:关键参数与电路稳定性优化

本文深入解析了稳压二极管在电路设计中的核心作用与选型要点。文章详细阐述了稳定电压、动态电阻、额定功耗等关键参数对电路稳定性的影响,并结合实战案例,提供了从需求分析到参数验证的系统化选型流程与优化策略,帮助工程师避免常见设计陷阱,实现电路稳定性优化。

weixin_29196891的博客 686

2023年全国职业院校技能大赛-信息安全管理与评估-赛题 5

2023年全国职业院校技能大赛-信息安全管理与评估-赛题 5

君逍遥o 2119

恶意代码分析实战——使用Apatedns和Inetsim模拟网络环境

恶意代码分析实战——使用Apatedns和Inetsim模拟网络环境 注:本次实验主要是《恶意代码分析实战》一书中进入动态恶意代码分析篇章的开始,主要通过Apatedns以及Inetsim来模拟为恶意代码提供其需要的网络环境,本次实验以Lab01-03.exe为例。 一、实验环境及工具。 Vmware虚拟机:win10(win7)、kali 主要工具:Apatedns、Inetsim 二、工具的安装下载 1、Apatedns:需安装至windows虚拟机客户端(win10,win7均可) 下载地址:http

妙蛙种子吃了都会妙妙秒的妙脆角的博客 7935

网络编程--实现用户登录验证功能

网络编程--实现用户登录验证功能 //User类: package com.bjsxt.net.tcp3; import java.io.Serializable; public class User implements Serializable{ //serialVersionUID序列化ID------易错点 private static final long seria

Vincent_yuan1991的博客 2250

Codex CLI 的多模型切换实战:如何在中转 API 环境下灵活选择最佳模型

本文详细介绍了在Codex CLI中实现多模型切换的实战技巧,重点解析了如何在中转API环境下灵活选择最佳AI模型。通过配置Node.js环境和智能路由策略,开发者可以根据任务类型、编程语言和成本考量,在GPT-5、Claude和DeepSeek等模型间高效切换,提升代码生成、审查和优化的效率。

weixin_29291185的博客 836

海康威视web控件开发+vue结合做网页开发

需求:vue的项目,需要在页面展示出海康的硬盘录像机连接的摄像头的实时监控画面以及回放功能. 准备:web开发包(包含插件以及demo,在海康官网即可下载32位64位的都有.那些需要积分下载的博主良心不疼么.) 点击这里下载:链接: https://pan.baidu.com/s/12FrbycWyWWyiRJH5Yd1tPA 提取码: gam5 开始开发: 1.安装demo目录下的WebComponentsKit.exe插件(根据自己的浏览器以及系统选择32位还是64位的插件) 2.打.

u013682258的博客 8484

使用Java实现的简易登录注册程序

import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.Scanner; /* * * * 使用Java实现一个简单的注册登录功能。 *(使用集合) * * */ class User{ int id; String passwo

Hadoooop 4851

【扫地机器人测试】

本测试方案旨在系统性评估扫地机器人的核心功能、性能指标、可靠性及用户体验,验证产品是否符合设计规范、行业标准及市场需求。通过多维度、全场景的测试,精准定位产品缺陷与优化空间,为产品迭代提供数据支撑,确保上市产品的质量稳定性与用户满意度。

xuhuaiyaun的博客 1372

Python+Mysql实现登录注册

在这个项目中,我们使用Python的Tkinter库和pymysql库实现了一个简单的用户登录和注册系统。在这个项目中,我们使用到了以下几个方面的知识和技能:使用Tkinter库创建图形用户界面(GUI):我们使用了Tkinter库创建窗口、标签、文本框和按钮等控件,以及如何将它们布局在界面上。与MySQL数据库进行连接和操作:我们使用了pymysql库连接到MySQL数据库,执行SQL查询和插入操作,并且将数据库中的数据与用户输入进行比对。

S20011102的博客 4127

安卓手机强制清理数据恢复出厂设置后无法设置密码怎么办?(分享亲身经历的有效解决方案)

📱安卓手机强制清数据恢复出厂设置后,竟无法设置锁屏密码!本文将解析问题根源,分享亲测有效的解决方案,帮你快速摆脱困扰🎉

XiaoqiangClub的博客 242

【前端基础篇】HTML5 + CSS3 入门知识

,HTML5和CSS3核心知识

前端知识分享喵 2982

jsp+dao+bean+servlet(MVC模式)实现简单用户登录和注册页面(连接数据库,登录页面包含验证码,两周内免登陆等功能)

jsp+java servlet实现简单用户登录(使用数据库,包括注册页面)功能介绍前期工作准备实现登录页面创建数据库三个页面处理欢迎界面(jsp)验证码(jsp)登录处理页面(servlet)欢迎界面实现注册页面 功能介绍 本项目通过使用jsp和servlet实现简单的用户登录。主要逻辑为: 如果用户不存在,则首先进行注册(注册信息同步到数据库中)。 进行注册后,可进入登录页面对账号进行登录。 如果账号存在,则正确跳转到欢迎界面,否则提示用户账号信息输入错误。 用户进行登录页面时需要填写验证码同时可勾选

qq_43505820的博客 1万+

【DexGraspNet与多指手抓取算法详解】第三章 DexGraspNet数据集构建机理

抓取姿态描述多指手与物体的相对空间关系,包含手掌位姿与手指关节配置。

VectorShift的博客 498

第19章_用户账号——【2.用户账号的登录注销注册】

《Python编程从入门到实践》学习笔记——Django 内容包括【6.创建用户账号,实现注册注销登录】 【创建用户账号】 [应用程序users] 1.创建应用程序users: python manage.py startapp users 2.将应用程序users添加到setting.py: 打开F:\learning_log\learning_log\settings.py,修改为 INS...

孰能无惑 727

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

如何实现验证登录

开发工具与关键技术:VS .MVC基础 作者:卢雅婷 撰写时间:2019/05/6 (代码来源于老师) 实现验证登录这个操作是一些软件使用前的操作,第一步是注册,再就是登陆软件,(比喻微信,QQ等通信、娱乐类型的软件),用户要登录就必然需要通过验证登录了。 以前一些的登录软件都只需要密码和账号即可,随着技术的进步,为了更好地保护用户的信息,避免一些不法分子利用密码和账号就可登录,我们现在很多软件的...

weixin_44538353的博客 8137

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Python与MySQL交互——简易用户注册登录

一、运行环境 1.使用Navicat Premium软件,建立数据库和记录用户账号及密码(加密后)的表,或使用系统终端,输入MySQL命令,建立数据库和表; 2.使用pycharm软件,用来与数据库进行交互。 二、实现目标 1.能够记录用户注册的账号和密码,并对密码进行加密处理; 2.能够对输入的登录账号及密码,与数据库内存储的数据进行比对,账号若未匹配,则显示“该账号未注册”,对已注册账号显示“登录成功”或“密码错误”; 3.对交互代码进行封装处理。 三、代码段 1.MysqlHelper

B_M_L的博客 4229

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Django中验证用户账号密码以及登陆账户方法以及验证方法重写(django16)

默认方法: Django中验证用户账号密码以及登陆账户方法: 1、引入两个方法:authenticate和login users/views.py文件 注意:如果你的登陆函数也叫login的话需要改为其他名字,在此处我改为了login_,因为在使用上方引入的login方法的时候,会出问题,为了避免出问题,要改名。 from django.contrib.auth import auth...

王菜菜的成长之路 4053

Javaweb程序设计基础入门eclipse实现用户注册登录和session存储

通过HTML,CSS,JavaScript和JSP实现页面的注册,登录和信息显示的三个界面的设计。

m0_74109036的博客 6553

C语言文件操作实现登录注册

C语言登录注册、文件操作、文件实现登录注册 使用 user_data.txt 文件存储用户账号密码信息,分为注册与登录两个功能。 注册功能将用户填写的用户名与密码写入到文件中,并判断是否写入(注册)成功。 登录功能将用户填写的用户名和密码与文件中存储用户名密码进行比较,符合则登录成功,不符合则登录失败。

日拱一卒无有尽,功不唐捐终入海 1万+

登录注册小程序

编写程序实现简单的登录注册功能。程序包含以下4个功能: (1)登录功能,用户输入正确的账号密码进行成功; (2)注册功能,输入用户名和密码进行注册; (3)查看功能,查看所有的用户名与密码; (4)退出功能,退出系统。 用户可以输入对应的编号进行相应的功能操作。例如,输入2进入注册功能,输入用户名和密码进行注册。...

m0_56210987的博客 475

PHP+MySQL制作简单的用户注册登录界面(注释超详细~附源代码)

PHP+MySQL制作简单的用户注册登录界面(附详细注释源代码)

m0_53649704的博客 5万+
上一篇: 文件末尾检测函数feof()
下一篇: 改良的用户注册和登录系统(2)
PAT-python-zjw
博客等级 码龄10年 381粉丝 408原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值