为了账号安全,请及时绑定邮箱和手机立即绑定

请问下case2的break怎么跳转不出来?


#include "stdio.h"
#include "stdlib.h"
#include "string.h"
void main()
{
    int num,shuliang=0,enter,day=0,sum;
    char paw[50],id[50];
    
    printf("\n\t迪士尼后台管理\n");
    printf("1:注册\n");
    printf("2:登陆\n");
    printf("请输入功能编号");
    scanf("%d",&num);
    switch(num)
    {
        case 1:printf("请输入注册用户名");
              scanf("%s",id);
              printf("\n请输入注册密码");
              scanf("%s",paw);
              printf("\n注册成功");
              break;
        case 2:printf("\n请输入登陆用户名");
               scanf("%s",id);
               if(strcmp(id,"1")==0)
               {
                   printf("\n请输入登陆密码");
                   scanf("%s",paw);    
                   if(strcmp(paw,"0")==0)
                   {
                           printf("\n\n\t===上海迪士尼乐园===");
                           printf("\n1:乐园与门票");
                           printf("\n2:住宿体验");
                           printf("\n0:退出");
                           while(1)
                           {
                               printf("\n请输入功能编号");
                               scanf("%d",&num);
                               switch(num)
                               {
                                   case 1:
                                        printf("\n请输入购票数量");
                                        scanf("%d",&shuliang);
                                        sum+=shuliang;
                                        printf("\n顾客您好,您本次总计购买乐园门票%d张,住宿天数%d天",shuliang,day);
                                        printf("\n是否继续购买");
                                        scanf("%d",&enter);
                                        if(enter==0)
                                        {
                                            break;    
                                        }
                                        break;
                                   case 2:printf("\n请输入入住天数");
                                          scanf("%d",&day);
                                          sum+=day;
                                          printf("\n顾客您好,您本次总计购买乐园门票%d张,住宿体验%d天",shuliang,day);
                                          printf("\n是否继续购买");
                                          scanf("%d",&enter);
                                          if(enter==0)
                                        {
                                            break;    
                                        }
                               }
                           
                           }
                       printf("乐园门票%d张,每盒499元,住宿体验%d晚,每晚899元,总计消费%d元",shuliang,day,shuliang*499+day*899);        
                   }
                   else
                   {
                           printf("密码输入有误");
                       }
               }
               else
               {
                   printf("用户名输入有误");
               }
               
    }
    
}

正在回答

1 回答

  • 首先你用scanf输入,第二个参数必须是一个地址, 用&变量引用。

  • case都得包含一个break

  • switch还必须包含一个default

  • if语句的跳出试试exit(0),返回操作界面

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

请问下case2的break怎么跳转不出来?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号