21xrx.com
2024-12-22 23:07:46 Sunday
登录
文章检索 我的文章 写文章
如何在C++中判断输入的姓名、学号和性别是否正确
2023-06-28 10:33:06 深夜i     --     --
C++ 判断 姓名 学号 性别

在C++中,判断输入的姓名、学号和性别是否正确是非常重要的。正确的输入可以保证程序的正常运行,而错误的输入则可能会导致程序出错或者无法得到正确的结果。下面介绍一些判断输入的方法。

1. 判断姓名是否正确

姓名的输入可能含有空格、特殊字符和数字等,因此需要使用正则表达式来判断。正则表达式可以用来表示一类字符的规则,例如匹配字母、数字、空格、特殊字符等。下面是一个示例代码,可以判断输入的姓名是否为纯字母,并且首字母大写:


#include <regex>

#include <iostream>

int main() {

  std::string name = "John Smith";

  std::regex pattern("[A-Z][a-zA-Z]*"); // 匹配纯字母,并且首字母大写

  if (std::regex_match(name, pattern))

    std::cout << "姓名输入正确" << std::endl;

   else

    std::cout << "姓名输入错误" << std::endl;

  

  return 0;

}

2. 判断学号是否正确

学号通常是由数字组成的,所以可以用isdigit函数判断输入的学号是否为数字。但是有些学号可能会有前缀或者后缀,这时候也需要使用正则表达式来判断。下面是一个示例代码,可以判断输入的学号是否为一个8位的数字:


#include <regex>

#include <iostream>

int main() {

  std::string id = "20210101";

  std::regex pattern("\\d{8}"); // 匹配8位数字

  if (std::regex_match(id, pattern))

    std::cout << "学号输入正确" << std::endl;

   else

    std::cout << "学号输入错误" << std::endl;

  

  return 0;

}

3. 判断性别是否正确

性别只有男和女两种情况,因此可以使用一个简单的if语句来判断输入的性别是否正确。下面是一个示例代码,可以判断输入的性别是否为男或女:


#include <iostream>

int main() {

  std::string gender = "女";

  if (gender == "男" || gender == "女")

    std::cout << "性别输入正确" << std::endl;

   else

    std::cout << "性别输入错误" << std::endl;

  

  return 0;

}

综上所述,以上是在C++中判断输入的姓名、学号和性别是否正确的三种方法。当然,在实际应用中,还需要根据具体的情况进行适当的修改和扩展。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复