首页 > 其他分享 >3个案例手把手教你:Go语言条件语句和循环的实际应用场景

3个案例手把手教你:Go语言条件语句和循环的实际应用场景

时间:2024-10-23 22:49:42浏览次数:7  
标签:语句 用户注册 手把手 fmt 循环 Go 邮箱 输入

在软件开发中,条件语句和循环是控制程序执行流的基础工具。在Go语言中,它们不仅能够优化程序结构,还能提高代码的可读性和灵活性。合理使用条件语句和循环能有效减少重复代码,提升系统的可靠性。本文将通过三个具体场景案例——用户注册系统、爬虫程序和商品库存管理系统——深入剖析如何利用Go语言中的条件语句和循环解决实际问题。


案例一:用户注册系统

背景介绍

用户注册功能是许多应用程序的核心模块。这个功能需要确保用户输入的信息有效且安全,包括姓名、邮箱及密码等。通过条件语句和循环,我们可以高效地验证这些输入。

实现步骤
  1. 输入用户信息:从用户处获取姓名、邮箱和密码。
  2. 验证邮箱格式:运用正则表达式确认邮箱地址的有效性。
  3. 检查密码强度:基于密码的长度和复杂性,提供相应的反馈。
  4. 循环操作:允许用户注册多位用户,或者选择退出。
代码实现
package main

import (
    "fmt"
    "regexp"
)

func main() {
   
    for {
   
        var name, email, password string

        // 输入用户信息
        fmt.Print("请输入姓名:")
        fmt.Scan(&name)

        fmt.Print("请输入邮箱:")
        fmt.Scan(&email)

        fmt.Print("请输入密码:")
        fmt.Scan(&password)

        // 检查邮箱格式
        if match, _ := regexp.MatchString(`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$`, email); !match {
   
            fmt.Println("邮箱格式不正确。")
        } else {
   
            fmt.Println(

标签:语句,用户注册,手把手,fmt,循环,Go,邮箱,输入
From: https://blog.csdn.net/weixin_52088134/article/details/143181748

相关文章

  • 阿里巴巴推出升级版AI翻译工具:Marco MT 性能超越Google、DeepL和ChatGPT
    阿里巴巴的国际业务部门于推出了一款升级版的AI翻译工具,名为MarcoMT。这款工具在翻译性能上超越了Google、DeepL和ChatGPT的同类产品。该工具的目标是帮助商户更好地在全球市场销售,尤其是在跨境电商领域,通过更加精准的翻译增强商户的国际竞争力。基于大语言模型:MarcoMT使......
  • python基于django的校园论坛交流表白墙系统
    目录项目介绍具体实现截图预期达到的目标技术栈编码规范开发技术介绍系统的稳定性和可维护性论文大纲目录核心代码部分展示详细视频演示源码获取方式项目介绍该校园系统主要是来服务与学校内各个职务人员,不管是学生还是老师还是其他在校职工,都可以通过这个平台来进......
  • 在 Go 语言中,构造一个并发安全的 map 集合
    Map集合是Go中提供的一个KV结构的数据类型,对它的操作在实际的开发中应该是非常多的,不过它不是一个线程安全的。1、Map不是线程安全的编写下面的测试代码:funcTestUnsafeMap(t*testing.T){//创建一个线程不安全的mapmyMap:=make(map[int]int)......
  • Go语言中方法是什么?
    在Go语言中,方法是附属于某种类型的函数,也就是说,方法与接收者(receiver)绑定,它可以是结构体类型或自定义类型。方法和函数的主要区别在于方法有一个特殊的接收者参数,而普通的函数没有。1.Go中的方法定义Go语言的方法是通过在函数名前面加上一个接收者参数来定义的。接收者可以是......
  • 18 质量保证:Go 语言如何通过测试保证质量
    从这节课开始,我会带你学习本专栏的第四模块:工程管理。现在项目的开发都不是一个人可以完成的,需要多人进行协作,那么在多人协作中如何保证代码的质量,你写的代码如何被其他人使用,如何优化代码的性能等,就是第四模块的内容。这一讲首先来学习Go语言的单元测试和基准测试。单元......
  • 手把手教你学PCIE(3.1)--PCIe 架构的系统架构图解
    目录PCIe架构的系统架构图解1.PCIe系统架构图2.主要组件及其功能2.1RootComplex(RC)2.2Switch(SW)2.3Endpoint(EP)3.链路(Link)4.配置空间(ConfigurationSpace)5.基地址寄存器(BaseAddressRegister,BAR)6.中断机制7.地址映射8.事务层包(T......
  • 更改Google谷歌浏览器安装位置
    谷歌浏览器默认是安装C盘的,越用占用的空间越大,所以需要手动迁移到非系统盘。1、在官网下载安装包:GoogleChrome网络浏览器2、下载后,双击安装,默认安装到C盘里面的,中途不能自定义安装。3、安装好后会在桌面生成一个谷歌浏览器的快捷方式:将鼠标移到谷歌浏览器快捷方式图标上→......
  • 2024-10-23:最高频率的 ID。用go语言,给定两个长度相等的整数数组 nums 和 freq, 其中num
    2024-10-23:最高频率的ID。用go语言,给定两个长度相等的整数数组nums和freq,其中nums中的每个元素表示一个ID,而freq中的每个元素表示对应ID在此次操作后出现的次数变化。如果freq[i]为正数,则表示在这次操作中nums[i]的ID会增加freq[i]次;如果freq[i]为负数,则表示在这次操作中nums[i......
  • 明解c语言入门篇练习4-2do语句延伸
    明解c语言练习4-2我们可以看到题目:编写一段程序,像右面这样读取两个整数的值,然后计算出他们之间所有整数的和。上次我发了一段这个练习4-2的代码可以看一下#include<stdio.h>intmain(void){  inta,b,max,min;  intsum=0;  printf("请输入两个整数:......
  • 手把手教你如何下载中国大学mooc慕课上已关闭的视频课程和课件资料
    随着线上教育的普及,越来越多的大学开始提供线上教育,以方便学生的在线学习。然而,有些课程在结束后就会被关闭,导致学生无法再次观看。如果你想下载这些已经关闭的视频课程,该怎么办呢?其实我们可以通过一些工具来下载这些已关闭的课程。这里以中国大学Mooc网站为例,教大家如何下载Mooc......