自学内容网 自学内容网

E9.【C语言】练习:模拟用户登录界面,最多输入三次密码以及strcmp函数的讲解

思路:分两个环节

1.输入密码,存储在数组里

2.密码验证(尝试次数不超过3次)

#define _CRT_SECURE_NO_WARNINGS 
#include <stdio.h>
#include <string.h>
int main()
{
char password[20] = { 0 };
int i = 0;
for ( i = 0; i <3; i++)
{
printf("输入密码:");
scanf("%s", password);
if (0==strcmp(password,"abc123"))
{
printf("密码正确\n");
break;
}
else 
printf("密码错误,再试一次\n");
}
if (3==i)
printf("三次都输错,退出程序\n");
return 0;
}

注意:1.字符串不能直接用==比较,要调用strcmp(string compare)

           2.调用strcmp函数要写#include <string.h>

格式:

strcmp(字符串1,字符串2)==0 //两字符串相等

补充: 这里的“less than”和“greater than”比的不是字符串的长度,而是ASCII值

strcmp的比较逻辑:

如比abcdef和abcddeff

该函数比较对应位置的单个字符的ASCII值

前四个字符的ASCII值一样,到了第五个:

e的ASCII值101,d的ASCII值100,且101>100,所以“abcdef greater than abcddeff”,后面的字符不再比较


原文地址:https://blog.csdn.net/2401_85828611/article/details/140280378

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!