问题是用C语言编写自动取款机的系统。
要求:1。显示“请输入你的密码”2。从键盘输入密码6位,但是不显示,显示成*号3。如果密码不正确,给提示“请重新输入你的密码”,密码不正确又分三种,位数不对,还有数字,字母不对。3。密码正确的话,显示“你好,你可以享受其它服务”4。允许的最大次数是三次。5,之间要清屏。
有谁帮我呀,我在这里谢谢大家了!
>> 本文固定链接: http://www.vcgood.com/archives/1056
问题是用C语言编写自动取款机的系统。
要求:1。显示“请输入你的密码”2。从键盘输入密码6位,但是不显示,显示成*号3。如果密码不正确,给提示“请重新输入你的密码”,密码不正确又分三种,位数不对,还有数字,字母不对。3。密码正确的话,显示“你好,你可以享受其它服务”4。允许的最大次数是三次。5,之间要清屏。
有谁帮我呀,我在这里谢谢大家了!
>> 本文固定链接: http://www.vcgood.com/archives/1056
你必须先 登录才能发表评论。
#include <string.h>
#include <conio.h>
#include <stdlib.h>
#ifdef UNIX
#undef UNIX
#endif
#ifndef UNIX
#define CLRSCR() system( “cls” )
#else
#define CLRSCR() system( “clean” )
#endif
#define MAXNUM 256
#define TRYCNT 3
#define PASSWORDLEN 6
#define PASSWORD “123456″
int main(int argc, char* argv[])
{
int nFlag1 = 0;
int nFlag2 = 0;
char szInput[ MAXNUM ];
int iCharCnt = 0;
int iTryCnt = 0;
for ( iTryCnt = 0; iTryCnt < TRYCNT; iTryCnt++ ) {
memset( (void *)&szInput, ‘\0′, MAXNUM );
iCharCnt = 0;
CLRSCR();
if ( 0 == iTryCnt ) {
printf( “请输入你的密码: ” );
} else {
printf( “请重新输入你的密码: ” );
}
while( ‘\r’ != (szInput[ iCharCnt++ ] = getch()) ) {
if ( MAXNUM < iCharCnt ) {
nFlag1 = 1;
break;
}
printf( “*” );
}
if ( 0 == nFlag1 ) {
szInput[ iCharCnt - 1 ] = ‘\0′;
if ( 0 == strcmp( PASSWORD, (const char *)&szInput ) ) {
nFlag2 = 1;
break;
}
}
}
CLRSCR();
if ( 1 == nFlag2 ) {
printf( “你好,你可以享受其它服务\r\n” );
} else {
printf( “密码不正确\r\n” );
}
return 0;
}
http://vcgood.com/forum_posts.asp?TID=662&KW=%D7%D4%B6%A F%C8%A1%BF%EE%BB%FA
这是C++版的