WINnie1226_ 2022-07-07 20:27 采纳率: 50%
浏览 24
已结题

关于设计运动会排名系统的问题

问题遇到的现象和发生背景

刚入门C语言不久 要求做个小系统 ,其中的更新模块要先输入正确密码才能进入新增删除或修改项目环节
现在就是没有error可以运行的情况 但是运行出来只能进行到输入密码然后弹出密码正确 没有办法再进行下一步

问题相关代码,请勿粘贴截图
int menu()
{
    int choice;
    system("cls");
     printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                 欢迎使用运动会排名系统                 |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   1-查看排名                           |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   2-详细查询                           |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   3-更新信息                           |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   4-其他帮助                           |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   0-退出程序                           |\n");
    printf("\t\t\t\t----------------------------------------------------------\n"); 
    printf("\t\t\t\t请选择功能:");
    scanf("%d",&choice);
    while(choice>4||choice<0)//判断是否输入正确
    {
        printf("请重新选择:");
        scanf("%d",&choice);
    }
    return choice;
}

int replace_yundongyuan(struct yundongyuan arr[],int n)    
{    
    int key();//进入更新程序前,输入密码12345678
    {
        char s[20];
        int n=0;
        printf("请输入密码:");
        while(n<3)
        {
            scanf("%s",s);
            getchar();
            if(strcmp(s,"12345678")==0)
            {
                printf("密码正确\n");
                return 0;
            }
            else
            {
                   n++;
                if(n==3)
                {
                    printf("输入错误,即将退出\n");
                    return 1;
                }
                printf("密码错误,请重新输入\n");
            }
        }
        return 1;
    }    
    int replacemode;
    int i,j=0;
    system("cls");                //清屏 
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                 欢迎使用运动会排名系统                 |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   1-新增项目信息                       |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   2-删除项目信息                       |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   3-修改项目信息                       |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t|                   0-返回上级菜单                       |\n");
    printf("\t\t\t\t----------------------------------------------------------\n");
    printf("\t\t\t\t请选择功能:");
    scanf("%d",&replacemode);

最后的主函数在这里

int main()
{
    system("cls");
    int choice;
    int num=0;
    int n;                    
    struct yundongyuan per[100];        
    do
    {
        choice=menu();
        switch(choice)
        {
        case 1:
            rank_yundongyuan(per,n);
            system("pause");    
            break;
        case 2:
            search_yundongyuan(per,n);
            system("pause");
            break;
        case 3:
            replace_yundongyuan(per,n);    
            system("pause");    
            break;
        case 4:
            printf("尚未开发此功能!"); 
            system("pause");
            break;
        case 0:
            printf("\t谢谢使用!\n");
            exit(0);
        }
    }
        while(choice!=0);
    return 0;
}

运行结果及报错内容

不清楚该怎么改才能让他在输入密码之后正常运行

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2022-07-07 20:37
    关注

    30行啥意思???int key();这是?
    密码输入正确你就return true了,那这个函数的作用是更新信息啊,不是检查密码啊,你咋就return 了呢 后面接着写更新信息的代码啊

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 7月15日
  • 已采纳回答 7月7日
  • 创建了问题 7月7日

悬赏问题

  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源
  • ¥15 安卓JNI项目使用lua上的问题
  • ¥20 RL+GNN解决人员排班问题时梯度消失
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路