ke0ning
ke0ning
采纳率0%
2017-06-13 07:42

'=' : left operand must be l-value 请大神们帮忙看看,谢谢!

#include
#include
#define LINE "=========================\n"
#define KEY "123456"
#define accounts "123456789"
int main()
{
//设置变量
int num;//用户选项
int m=5000;//账号初始金额
char key[6];//密码
int re;
char a[10];//用户输入账号
int cishu=0;//输入密码次数
int i = 0;
char key1[6];//新密码
//密码输入
do
{
printf("请输入密码: \n");
scanf("%s",key);
re = strcmp(KEY,key);
if(re==0)
{ printf("密码正确,登陆成功!^-^ \n");break;}
else{ printf("密码错误,你还有%d次机会!\n",3-cishu);}
cishu++;
}
while(re!=0&&cishu<=3);
//密码输入3次后结束程序
if(cishu>3)
{ return 0;}
do
{
//设置用户界面
printf(LINE);
printf("\t1.取款\n",num);
printf("\t2.存款\n",num);
printf("\t3.转账\n",num);
printf("\t4.修改密码\n",num);
printf("\t5.查询余额\n",num);
printf("\t6.退出\n",num);
printf(LINE);
//用户选择操作
printf("请选择交易类型: ");
scanf("%d",&num);

//判断用户选择交易

switch(num)
{
int m1;//取款金额
int m2;//存款金额
int m3;//转账金额
char key1[6];//新密码
int m5;//查询余额

    //取款
case 1:printf("你需要提取的金额: \n",m1);
       scanf("%d",&m1);
if(m<m1)
{  printf("你的余额不足! \n");m=m-m1;break;}
else{   printf("请提取现金!\n");m=m-m1;break;}
//存款
case 2:
    do
    {   printf("请输入你要存入的账号: ");
       scanf("%s",a);
     re = strcmp(accounts,a);
     if(re==0)
     {  printf("账号正确!^-^ \n");break;}
     else{  printf("请重新输入账号!\n");}
    }
   while(re!=0&&cishu<=3);
    printf("请输入你要存入的金额: \n",m2);
       scanf("%d",&m2);
    printf("你已成功向%s账号存入%d\n",a,m2);
       break;
       //转账

case 3:
do
{ printf("请输入你要转入的账号: ");
scanf("%s",a);
re = strcmp(accounts,a);
if(re==0)
{ printf("账号正确!^-^ \n");break;}
else{ printf("请重新输入账号!\n");}
}
while(re!=0&&cishu<=3);
printf("请输入你要转入的金额: \n",m3);
scanf("%d",&m3);
if(m<m3)
{ printf("你的余额不足,无法进行转账! \n");break;}
else
{ printf("转账成功!^-^\n"); break;}
case 4:
do
{
printf("请输入原密码:");
scanf("%s",key);
re = strcmp(KEY,key);
if(re == 0){
printf("密码验证正确!");
break;
} else {
printf("请重新输入原密码:");
}
} while (re != 0 );
printf("请输入新密码:");
scanf("%s",key1);
key=key1;(就是这里,怎么写都错)
printf("恭喜你,密码修改成功!");
break;

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • fight_in_dl 战在春秋 4年前

    key和key1都是数组名,C语言中数组名是 常量 指针,如果这样赋值就好比 36 = 3;
    显然不正确。

    可以这样:

     strcpy(key, key1);  //需要包含 #include <string.h>
    
    

    用心回答每个问题,如果对您有帮助,请采纳答案好吗,谢谢!

    点赞 评论 复制链接分享