编写程序,从键盘上输入用户名,判断用户名是否合法()
时间: 2023-05-21 17:06:26 浏览: 99
好的,这是一个简单的用户输入验证程序,可以检测用户名是否为合法字符集(不包含空格)并且长度为6-12个字符:
```
#include <stdio.h>
#include <string.h>
int main() {
char username[20];
printf("请输入用户名:\n");
scanf("%s", username);
int len = strlen(username);
if (len < 6 || len > 12) {
printf("用户名长度应为6-12个字符\n");
return 0;
}
for (int i = 0; i < len; i++) {
if (username[i] == ' ') {
printf("用户名中不能包含空格\n");
return 0;
}
}
printf("用户名合法\n");
return 0;
}
```
如果用户名合法,会输出"用户名合法"。否则会输出相应的错误信息。
相关问题
编写程序,从键盘上输入用户名,判断用户名是否合法(用户名包含数字或字母,并且第一个字符必须是大写字母)
好的,这是一个很基础的编程问题,以下是一个示例代码,可以实现从键盘上输入用户名,判断用户名是否合法:
```
#include <stdio.h>
#include <ctype.h>
int main() {
char username[20];
printf("请输入用户名:");
scanf("%s", username);
if (!isupper(username[0])) {
printf("用户名的第一个字符必须是大写字母!\n");
return 0;
}
for (int i = 0; username[i] != '\0'; i++) {
if (!isalnum(username[i])) {
printf("用户名只能包含数字或字母!\n");
return 0;
}
}
printf("用户名合法!\n");
return 0;
}
```
这个程序首先从键盘上读入一个用户名,然后判断用户名的第一个字符是否是大写字母,如果不是,则输出错误信息并退出程序;否则,遍历用户名的每一个字符,如果发现有非数字或字母的字符,则输出错误信息并退出程序;如果用户名合法,则输出成功信息。
编写程序,从键盘上输入用户名,判断用户名是否合法(用户名包含数字或字母,并且第一个字符必须是大写字母)
可以使用正则表达式来判断用户名是否合法,以下是示例代码:
import re
username = input("请输入用户名:")
if re.match(r'^[A-Z][a-zA-Z0-9]*$', username):
print("用户名合法")
else:
print("用户名不合法")
这段代码首先使用 input 函数从键盘上获取用户名,然后使用 re.match 函数和正则表达式进行匹配。正则表达式 ^[A-Z][a-zA-Z0-9]*$ 表示用户名必须以大写字母开头,后面可以跟任意个数字或字母。如果匹配成功,则说明用户名合法,否则说明用户名不合法。
阅读全文