1.收获
今天我自己看了一遍视频,然后明白了许多函数的用法以及什么时候用,该怎样去定义函数。在看完视频后自己独立地将项目比较好的写了出来。在这过程中,我明白要去把整个项目的逻辑理清楚,分别分为哪几个部分,并且还要进行不断地思考。话不多说,看下面的过程就知道了。
2.过程
(1)进行登陆界面函数实现
通过简单地printf来实现。
//登陆界面
void welcome(void){
printf_s("**************\n");
printf_s(" 欢迎使用\n");
printf_s("**************\n");
}
(2)提示输入密码以及判断密码是否输入正确的函数
//输入密码
bool loginATM(void){
int pw=0;
int wrongtime=0;
while(1){
printf("请输入密码:");
scanf_s("%d",&pw);
if(pw==password){
return true;
}
else {
wrongtime++;
if(wrongtime==4){
printf_s("此卡已冻结 请联系客服!\n");
loginout();
system("pause");
return false;
}
else {printf_s("密码错误 ");
}
}
}
}
(3)密码正确后的显示操作
rintf_s("************\n");
printf_s("1.取款\n");
printf_s("2.存款\n");
printf_s("3.修改密码\n");
printf_s("4.退出\n");
printf_s("************\n");
(4)判断操作是否正确
printf_s("请选择操作:");
scanf_s("%d",&chiose);
getchar();
if(chiose==1||chiose==2||chiose==3||chiose==4){
break;}
else {
printf_s("操作不合法 ");
}
(5)判断操作是什么
switch(chiose){
case 1: outMoney();
break;
case 2: putMoney();
break;
case 3: setpassword();
break;
default: loginout();
system("pause");
return 0;
}
(6)在判断是什么操作之后,需要执行的操作我们用函数来实现
//取款
void outMoney(void){
int outmoney=0;
while(1){
printf_s("请输入取款金额:");
scanf_s("%d",&outmoney);
if(outmoney>money||outmoney<0){
printf_s("余额不足 ");
bool ch=iscontinue();
if(ch==false){return;
}
}
else {money-=outmoney;
printf_s("取款成功 当前余额为:%d\n",money);
bool ch=iscontinue();
if(ch==false){return;
}
}
}
}
//存款
void putMoney(void){
int putmoney=0;
while(1){
printf_s("请输入存款金额:");
scanf_s("%d",&putmoney);
money+=putmoney;
printf_s("当前余额为:%d\n",money);
bool ch=iscontinue();
if(ch==false)return;
}
}
//修改密码
void setpassword(void){
int pw=0;
int newpassword=0;
int newpw=0;
while(1){
while(1){
printf_s("请输入原始密码:");
scanf_s("%d",&pw);
//判断原始密码是否正确
if(pw!=password){
printf_s("密码错误 ");
}else {break;
}
}
//输入新的密码
printf_s("请输入新密码:");
scanf_s("%d",&newpw);
printf_s("请再次输入新密码:");
scanf_s("%d",&newpassword);
//判断两次密码是否一致
if(newpw==newpassword){
password=newpassword;
printf_s("密码修改成功!\n");
bool ch=iscontinue();
if(ch==false)return;
}
else{
printf_s("两次密码不一致 \n");
bool ch=iscontinue();
if(ch==false)return;
}
}
}
(7)在执行这些操作之后会有一个选择,是否继续进行该操作,我也用一个函数来实现
//是否继续操作
bool iscontinue(void){
int ch;
printf_s("是否继续 “是”请按1 “否”请按2:");
scanf_s("%d",&ch);
getchar();
if(ch==2)return false;
else return true;
}
(8)虽然这些函数已经定义了但是还是需要进行声明
void welcome(void);//登陆界面
bool loginATM(void);//登陆 输入密码
void loginout(void);//退出
void outMoney(void);//取款
bool iscontinue(void);//是否继续操作
void putMoney(void);//存款
void setpassword(void);//修改密码
(9)在这些函数中有些函数用到了相同的变量,这就需要我们将这些变量定义为全局变量
int password=123456;
int money=1000;
int _tmain(int argc, _TCHAR* argv[]){return 0;}
这些全局变量需要定义在主函数之前
3.最终效果
4.不足
在这项目中还有很大的一部分都不是自己想出来的,,只是自己模仿过来的,不是属于自己的东西,还需要加强自生的水平,多去实际操作,多动手,多动脑,培养自己的逻辑思维。加油!!!