标题:请求一个登陆程序````
只看楼主
canon787
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-6-28
 问题点数:0 回复次数:7 
请求一个登陆程序````

我要弄个登陆的程序,本意是设置用户名跟密码都是admin,如果输入不是admin就显示错误,请重新输入,
如果正确就顺利登陆并执行下面的操作````可我老是设置不了"admin"这串字的设置的比较````
请朋友们帮我写个这样的一段程序出来行不? 用C的````谢谢大家先啊```
搜索更多相关主题的帖子: 请求 登陆 
2007-06-16 20:45
I喜欢c
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:64
帖 子:1749
专家分:0
注 册:2007-3-2
得分:0 
不是有个 strcmp(char *str1,char *str2) 函数吗?  头文件 string.h

 我是指针,却丢失了目标地址!          我是循环,却缺少了结束条件!      我是函数,却没有人来调用!   
2007-06-17 10:22
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
得分:0 
一位一位的比较也可以吧!

Fight  to win  or  die...
2007-06-17 10:58
canon787
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-6-28
得分:0 


老是死循环呀```郁闷````
救命```可否弄个完整的程序上来啊?


Learning by heart
2007-06-17 16:13
canon787
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-6-28
得分:0 
唉````似乎差不多是这个类型了````
大家指点一下````
#include<stdio.h>
#include<string.h>
void main()
{
char str1[]={" "};
char str2[]={"admin"};
printf("input the code:");
gets(str1);
strcmp(str1,str2);
if(strcmp(str1,str2)==0)
puts("Right!Please continue!");
else
{
printf("Wrong code!Please reInput!");
printf("Input the code:");
gets(str1);
}
}

Learning by heart
2007-06-17 16:31
canon787
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-6-28
得分:0 
我最终是弄成这个样子了,但是为什么输入一次不正确后,第二次无论正确于否都不再提示,而是直接显示“Please press any key to continue”并按键后退出呢?
该怎么解决这个问题呀?

#include<stdio.h>
#include<string.h>
void main()
{
char str1[]={" "};
char str2[]={"admin"};
printf("\t\t管理员登陆");
printf("\n\t管理员ID:");
gets(str1);
printf("\t管理员密码:");
gets(str1);
strcmp(str1,str2);
if(strcmp(str1,str2)==0)
printf("\n\t顺利登陆,请自由选择操作!\n");
else if(strcmp(str1,str2)!=0)
{
printf("\n\tID或密码错误!\n\t请重新输入!\n");
printf("\n\t管理员ID:");
gets(str1);
printf("\t管理员密码:");
gets(str1);
}
}

Learning by heart
2007-06-17 16:43
canon787
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2006-6-28
得分:0 
然后我试着改成了这样,似乎可以了耶`````
#include<stdio.h>
#include<string.h>
void main()
{
char str1[]={" "};
char str2[]={"admin"};
printf("\t\t管理员登陆");
printf("\n\t管理员ID:");
gets(str1);
printf("\t管理员密码:");
gets(str1);
strcmp(str1,str2);
while(strcmp(str1,str2)!=0)
{
printf("\n\tID或密码错误!\n\t请重新输入!\n");
printf("\n\t管理员ID:");
gets(str1);
printf("\t管理员密码:");
gets(str1);
};
printf("\n\t顺利登陆,请自由选择操作!\n");
}

Learning by heart
2007-06-17 16:46
zkkpkk
Rank: 2
等 级:论坛游民
威 望:5
帖 子:489
专家分:28
注 册:2006-6-17
得分:0 
既然是练习来着,总不能叫人家用现成的吧,比较字符串是否相等

int l=strlen(ch1);
int s=0;
while(!(ch1[s]=='\0'))
if(!(ch1[s]==ch2[s++]))
break;
if(!(s==m))
return;
else
cout<<\"通过验证。\";


Viva,espana!
2007-06-18 20:11



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-148091-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.171340 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved