| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2252 人关注过本帖
标题:我是一个菜鸟,正在写一个银行管理系统,写了这么多总是有错误,运行不了, ...
取消只看楼主 加入收藏
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:7 
我是一个菜鸟,正在写一个银行管理系统,写了这么多总是有错误,运行不了,求大神指点下
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>


struct CCard
{
 char card [20];
 char password[7];
 int flag;
 float account;
};
 int main()
{

 struct CCard C1[5];
     printf("\n\n-----------------------------------------------欢迎进入银行管理系统!---------------------------------------------------");
     scanf("%s");
 int n=0;
 while(n)
{
     printf("请输入相应编号进行以下操作:\n");
     scanf("%d",&n);
     printf("\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");
     printf("\n-----------------------------------------------1.银行卡管理--------------------------------------------------------------");
     printf("\n-----------------------------------------------2.银行卡登录--------------------------------------------------------------");
}
 switch(n)
{
 case 1:manage();break;
 case 2:Winlogon();break;
 case 3:exit(0);
 default:printf("输入错误,请重新输入!\n");
}
 return 0;
}



int winlogon();
{
int i=0;
     printf("\n请输入您的卡号:");
     gets("card C1[0]");
     printf("\n请输入您的密码:");
while(++i <= 3)
{
     gets("password c1[0]");
if(strcmp("card C1[0]","password C1[0]")==0)
 {
     printf("\n登陆成功,请输入相应编号进行以下操作:");
     printf("\n------------------------------------------------1.存款---------------------------------------------------------------");
     printf("\n------------------------------------------------2.取款---------------------------------------------------------------");
     printf("\n------------------------------------------------3.转账---------------------------------------------------------------");
     printf("\n------------------------------------------------4.余额查询-----------------------------------------------------------");
     break;
 }
 switch(n)
{
case 1:drawmoney();break;
case 2:deposit();break;
case 3:transfer();break;
case 4:balance();break;
case 5:exit(0);
default:printf("输入错误,请重新输入!\n");
}
 
  else
  {
      printf("用户名或密码错误,请重新输入!");
     break;
     }
  if(i<3)
  {
      printf("\n请重新输入密码,你还有%d次机会",3-i);
  }
  else
  {
      printf("密码错误已超过三次,你的账户已被冻结!");
  }
}
return 0;
}

int Manage();
{
char m[10]="mao123";
char input[10]={0};

        printf("请输入管理员密码:");
       gets(input);
if(strcmp(m,input)==0)
{
       printf("\n登陆成功,请输入相应编号进行以下操作:");
       printf("\n------------------------------------------------1.添加银行卡---------------------------------------------------------------");
       printf("\n------------------------------------------------2.删除银行卡---------------------------------------------------------------");
       printf("\n------------------------------------------------3.改密---------------------------------------------------------------");
       printf("\n------------------------------------------------4.信息查询-----------------------------------------------------------");
}
 switch(n)
{
 case 1:open();break;
 case 2:closing();break;
 case 3:modify();break;
 case 4:information();break;
 case 5:exit(0);
 default:printf("输入错误,请重新输入!\n");
}
else
     {
        printf("密码错误,请重新输入");
}
return o;
}

void drawmoney;
{   
    int Num;
        printf("\n请输入存款金额:");
        scanf("%d,&Num");
        C1[0].account=C1[0].account+Num;
        getchar();
        printf("请把你的钱放到指定位置----");
}

void deposit;
{
    char x;
        printf(\n"请输入取款金额:");
        scanf("%f",&x);
    if(C1[0].account>=x)
        C1[0].account=C1[0].account-x;
        printf("请取走您的钱----");
    else
        printf("对不起,您的余额不足----");
}
void transfer();
{
    char y;
        printf("请输入需要转账的银行卡号:");
        scanf("%c",&CCard);
        printf(\n"请输入转账金额:");
        scanf("%f",&y);
    if(C1[0].account>y);
        C1[0].account=C1[0].account-y;
        C1[1].account=C1[1].account+y;
        printf("恭喜您转账成功----");
    else
        printf("对不起,您的余额不足----");
}
void balance();
{
        printf("您的银行卡余额剩余10000元----");
}
void open();
{
int z=3;
        printf("\n请依次输入卡号,密码,余额");
        scanf("%c,%d,%f",&C1[Z].card[15],&C1[z].password[6],&C1[Z].account);
        printf("恭喜您开户成功");
}
void closing();
{
int z=4;
        printf("\n请依次输入卡号,密码,余额");
        scanf("%c,%d,%f",&C1[Z].card[15],&C1[z].password[6],&C1[Z].account);
        printf("恭喜您销户成功");
}
void modify();
{
        printf("请输入需要修改密码的银行卡号:");
        scanf("%c",&C1[5].card);
        printf("请输入旧密码:");
        scanf("%d",&C1[5].password);
if(strcmp("card C1[5]","password C1[5]")==0)
        printf("请输入新密码:");
        printf("请再次输入:");
        printf("修改成功,请牢记您的新密码!!!!");

}
void information();
{
    printf("系统故障,对不起,请稍后打开-----");
}
搜索更多相关主题的帖子: 银行 printf 输入 case break 
2017-07-04 19:37
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
收藏
得分:0 
回复 2楼 renkejun1942
manage()等几个函数的原型都在main函数下面啊,。声明函数后面不用加分号么???
2017-07-05 14:37
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
收藏
得分:0 
回复 4楼 wp231957
这样,谢谢版主
2017-07-05 15:46
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
收藏
得分:0 
flag是怎样用的?让flag=0时表示账户冻结,=1时正常
2017-07-05 21:03
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
收藏
得分:0 
回复 7楼 renkejun1942
好的,谢谢大神
2017-07-05 22:16
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
这个哪里错了,为什么输入正确的执行的是else
2017-07-05 22:19
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
收藏
得分:0 
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int Winlogon();
int Manage();
void drawmoney();
void deposit();
void transfer();
void balance();
void open();
void closing();
void modify();
void information();
struct CCard
{
 char card[20];
 char password[7];
 int flag;
 float account;
};
 struct CCard C1[5];
 int Winlogon()
{

int i=0;
int n;
char input[10]={0};
     printf("\n请输入您的卡号:");
     scanf("%c",&C1[0].card);
     getchar();
     gets(input);
if(strcmp(C1[0].card,C1[0].card)==0)
{   
     printf("\n请输入您的密码:");
     scanf("%C",&C1[0].password);
     getchar();
while(++i <= 3)
{
     gets(input);
if(strcmp(C1[0].password,C1[0].password)==0)
{
    {
     printf("\n登陆成功,请输入相应编号进行以下操作:");
     printf("\n------------------------------------------------1.存款---------------------------------------------------------------");
     printf("\n------------------------------------------------2.取款---------------------------------------------------------------");
     printf("\n------------------------------------------------3.转账---------------------------------------------------------------");
     printf("\n------------------------------------------------4.余额查询-----------------------------------------------------------");
     printf("\n------------------------------------------------5.退出程序-----------------------------------------------------------");
     scanf("%d",&n);
    }
 switch(n)
{
case 1:drawmoney();break;
case 2:deposit();break;
case 3:transfer();break;
case 4:balance();break;
case 5:exit(0);
default:printf("\n输入错误,请重新输入!");break;
}
}
 
  else
  {
      printf("\n密码错误,请重新输入!");
     break;
     }
  if(i<3)
  {
      printf("\n请重新输入密码,你还有%d次机会",3-i);
  }
  else
  {
      printf("\n密码错误已超过三次,你的账户已被冻结!");
  }
}
}
else
{
    printf("\n您输入的卡号有误,请重新输入:");
}
return 1;
}

int Manage()
{
int n;
char m[10]="123";
char input[10]={0};

        printf("\n请输入管理员密码:");
       scanf("%c",&m[10]);
       gets(input);
if(strcmp(m,input)==0)
{
    {
       printf("\n------------------------------------------------1.添加银行卡---------------------------------------------------------------");
       printf("\n------------------------------------------------2.删除银行卡---------------------------------------------------------------");
       printf("\n------------------------------------------------3.改密---------------------------------------------------------------------");
       printf("\n------------------------------------------------4.信息查询-----------------------------------------------------------------");
       printf("\n------------------------------------------------5.退出程序---------------------------------------------------------\n");
       printf("\n登陆成功,请输入相应编号进行以下操作:");
       scanf("%d",&n);
    }

 switch(n)
{
 case 1:open();break;
 case 2:closing();break;
 case 3:modify();break;
 case 4:information();break;
 case 5:exit(0);
 default:printf("\n输入错误,请重新输入!");
}
}
else
     {
        printf("\n密码错误,请重新输入");
}
return 1;
}

void drawmoney()
{   
struct CCard C1={"000000000","000000",1,000};
int Num;
        printf("\n请输入存款金额:");
        scanf("%d",&Num);
        C1.account=C1.account+Num;
        getchar();
        printf("\n请把你的钱放到指定位置----");
}

void deposit()
{
struct CCard C1={"000000000","000000",1,000};;
char x;
        printf("\n请输入取款金额:");
        scanf("%f",&x);
if(C1.account>=x)
{
        C1.account=C1.account-x;
        printf("\n请取走您的钱----");
}
else
        printf("\n对不起,您的余额不足----");
}
void transfer()
{
struct CCard C1[5];
char y;
        printf("\n请输入需要转账的银行卡号:");
        scanf("%c",&C1[5].card);
        printf("\n请输入转账金额:");
        scanf("%f",&y);
if(C1[5].account>y)
{
        C1[0].account=C1[0].account-y;
        C1[1].account=C1[1].account+y;
        printf("\n恭喜您转账成功----");
}
else
{
        printf("\n对不起,您的余额不足----");
}
}
void balance()
{
        printf("\n您的银行卡余额剩余10000元----");
}
void open()
{
        printf("\n请依次输入卡号,密码,余额");
        scanf("%c%d%f",C1[5].card,C1[5].password,&C1[5].account);
        printf("\n添加银行卡成功!!!");
}
void closing()
{
        printf("\n请依次输入卡号,密码,余额");
        scanf("%c%d%f",C1[5].card,C1[5].password,&C1[5].account);
        printf("\n删除银行卡成功!!!");
}
void modify()
{
struct CCard C1[5];
char newpassword;

        printf("\n请输入您需要改密的银行卡卡号:");
        scanf("%c",&C1[5].card);
        printf("\n请输入您的旧密码:");
        scanf("%c",&C1[5].password);
if(strcmp("card C1[5]","password C1[5]")==0)
{
      printf("\n请输入您的新密码:");
        scanf("%c",&newpassword);
        printf("\n请再次输入");
        scanf("%c",&newpassword);
        printf("\n密码修改成功,请牢记!!!");
}
else
    printf("\n密码错误,请重新输入!!");

}
void information()
{
        printf("\n系统故障,请稍后再来!!!");
}
int main()
{
int n;
        printf("\n\n-----------------------------------------------欢迎进入银行管理系统!---------------------------------------------------");
        printf("\n\n-----------------------------------------------管理员密码:123----------------------------------------------------------");
 

        
        printf("\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");
        printf("\n-----------------------------------------------1.银行卡管理--------------------------------------------------------------");
        printf("\n-----------------------------------------------2.银行卡登录--------------------------------------------------------------");
        printf("\n请输入相应编号进行以下操作:");
        scanf("%d",&n);
 
 switch(n)
{
 case 1:Manage();break;
 case 2:Winlogon();break;
 case 3:exit(0);
 default:printf("\n输入错误,请重新输入!");
}
 return 0;
}
2017-07-06 21:16
乎uifhu
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2017-6-5
收藏
得分:0 
调试了很多遍,终于可以运行了。。现在的问题是怎样让,在void open()函数运行过可以返回上一个函数。。。求助大神
2017-07-06 21:24
快速回复:我是一个菜鸟,正在写一个银行管理系统,写了这么多总是有错误,运行不 ...
数据加载中...
 
   



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

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