点击上方“C语言中文社区”,选择“设为星标★”
技术干货第一时间送达!
C语言交流群:后台回复【C语言】
C语言实例第01期,十进制数转换二进制数
C语言实例第02期,判断某一年是否为闰年
C语言实例第03期,使用*打印平行四边形
C语言实例第04期,在控制台打印出著名的杨辉三角
C语言实例第05期,实现投票统计功能
C语言实例第06期:交换数组中最大数和最小数的位置
C语言实例第07期:反转字符串
C语言实例第08期:使用goto语句从循环中跳出
C语言实例第09期:计算字符串中单词的个数
C语言实例第10期:控制台打印系统的日期和时间
C语言实例第11期:将3个数由大到小的顺序输出
实例代码
//
// Created by 冲哥 on 2020/9/26.
//实现功能:模拟用户名登陆
#include "stdio.h"
#include "string.h"
int main(){
char user_name[20] = {"zhangsan"};
char password[7]={"123456"};
char name[20], pwd[20];
int i = 0;
while (i 3) {
printf("请输入用户名:\n");
gets_s(name, 20);
printf("请输入密码:\n");
gets_s(pwd, 7);
if (strcmp(user_name, name) != 0) {
printf("您好,您输入的用户名有误!请重新输入:\n");
} else {
if (strcmp(password, pwd) != 0) {
printf("您好,您输入的密码有误!请重新输入:\n");
} else {
printf("欢迎使用!\n");
break;
}
}
i++;
}
if (i == 3) {
printf("输入错误已达3次,账号被锁定!\n");
}
}
运行结果
正常系
D:\Users\source\C\Test0823\cmake-build-debug\Test0823.exe
请输入用户名:
zhangsan
请输入密码:
123456
欢迎使用!
Process finished with exit code 0
异常系
D:\Users\source\C\Test0823\cmake-build-debug\Test0823.exe
请输入用户名:
zhang
请输入密码:
123456
您好,您输入的用户名有误!请重新输入:
请输入用户名:
zhangsan
请输入密码:
1234
您好,您输入的密码有误!请重新输入:
请输入用户名:
zhangs
请输入密码:
123
您好,您输入的用户名有误!请重新输入:
输入错误已达3次,账号被锁定!
Process finished with exit code 0
程序分析
本实例中使用到了字符串的比较函数strcmp(str1, str2);
,这个函数的功能是按照ASCII码顺序比较两个字符串,并由返回值返回比较结果。
- str1 = str2 返回值为0
- str1 > str2 返回值大于0
- str1 < str2 返回值小于0
9.27
点分享点点赞点在看