费曼 发表于 2018-12-22 16:12:39

求助!为什么会返回-1呢,急急!

#include<stdio.h>
#include<stdlib.h>

struct USER
{
        long long id;
        long long password;
        struct USER *pnext;
};
void AddUser(struct USER**pphead)
{
        struct USER*newuser=(struct USER*)malloc(sizeof(struct USER));
        printf("--注册新账户--\n");
        printf("账户:");
        scanf("%lld",&newuser->id);
        printf("密码:");
        scanf("%lld",&newuser->password);
        newuser->pnext=*pphead;
        *pphead=newuser;       
}
void log_on(long*id,long*password)
{
        printf("——请输入账号和密码(未注册请先注册账户)——\n");
        printf("账号:");
        scanf("%lld",id);
        printf("密码:");
        scanf("%lld",password);
}
int confirm_user(struct USER*user,long long id,long long password)
{
       
        while(1)
        {
                if(user==NULL) //要放前面
                {
                        return -1;
                }
                if(id==user->id&&password==user->password)
                {
                        return 1;
                }
                user=user->pnext;
        }
}
int main()
{
                struct USER *phead=NULL;
                int kiss;
                long id,password;
                printf("1 登录\n");
                printf("2 注册\n");
                printf("3 退出\n");
                while(1)
                {
                        printf("请输入操作前的序号进行相应操作:");
                        scanf("%d",&kiss);
                        switch(kiss)
                        {
                                case 1:log_on(&id,&password);printf("%d\n",confirm_user(phead,id,password));break; //+break
                                case 2:AddUser(&phead);break;
                                case 3:exit(1);break;
                        }
                }
        }

115504101 发表于 2018-12-22 16:24:36

{
                if(user==NULL) //要放前面
                {
                        return -1;
                }
你这有个-1?

风扫地 发表于 2018-12-22 16:57:16

按你的流程跑了一下,返回的是1.

费曼 发表于 2018-12-23 10:09:33

风扫地 发表于 2018-12-22 16:57
按你的流程跑了一下,返回的是1.

为什么我是-1
页: [1]
查看完整版本: 求助!为什么会返回-1呢,急急!